エリア プロパティを持つドキュメントがあります。このプロパティはポリゴンの配列です。ポリゴンがいくつかの都市の境界を表しているとしましょう。
境界ボックスがある場合、境界ボックス内にポリゴンが少なくとも 1 つあるドキュメントを照会したいと考えています。
私のクエリは、フィルターに一致する単一の領域がある場合、または境界ボックスが非常に大きく、すべてのポリゴンがその中にある場合に機能します。
{
"query":{
"bool":{
"filter":[
{
"geo_shape":{
"areas":{
"shape":{
"type":"envelope",
"coordinates":[
[
20.9325116,
52.2280665
],
[
21.0069884,
52.1928718
]
]
},
"relation":"within"
}
}
}
]
}
}
}
サンプル エリア プロパティは次のようになります。
{
"areas":[
{
"type":"polygon",
"coordinates":[
]
},
{
"type":"polygon",
"coordinates":[
]
}
]
}