0
说,我想搜索一个文档,它位于三个地理点A,B或C中任何一个的5kms内。是否可以在单个查询中执行或如何做到这一点?如何使用多于一个地理点的弹性搜索距离查询
说,我想搜索一个文档,它位于三个地理点A,B或C中任何一个的5kms内。是否可以在单个查询中执行或如何做到这一点?如何使用多于一个地理点的弹性搜索距离查询
是的,您可以使用含有geo_distance
查询的bool/should
查询。
POST /your_index/_yearch
{
"query": {
"bool": {
"should": [
{
"geo_distance": {
"distance": "5km",
"pin.location": {
"lat": 40,
"lon": -70
}
}
},
{
"geo_distance": {
"distance": "5km",
"pin.location": {
"lat": 41,
"lon": -71
}
}
},
{
"geo_distance": {
"distance": "5km",
"pin.location": {
"lat": 42,
"lon": -72
}
}
}
]
}
}
}