为什么我的ElasticSearch查询没有获取位于地理边界框内的文档?

时间:2011-11-09 16:49:27

标签: geolocation geospatial geo elasticsearch

以下是查询,结果,映射和许多文档之一的甜蜜链接:

https://gist.github.com/1352021

我还应该注意到我也尝试了geo_distance,但未能返回任何文件。我做错了什么?

1 个答案:

答案 0 :(得分:1)

在文档中,您不需要嵌套的“位置”,并且应该以[lon,lat]格式指定位置:

  "Location": [-118.47115, 33.98874],

在查询中,当您查看地图时,边界框的左上角必须是边界框的左上角。在纬度范围内似乎也存在拼写错误(文档中为33.98874,查询中为34-35)。尝试这样的事情:

     "filter":{
        "geo_bounding_box":{
           "Location":{
              "top_left":{
                 "lat":34.0,
                 "lon":-119.0
              },
              "bottom_right":{
                 "lat":33.0,
                 "lon":-118.0
              }
           }
        }
     }