如何从地理位置字段获取聚合的最大和最小纬度和经度?

时间:2016-05-09 19:09:55

标签: elasticsearch

我有一个名为location的字段,其latlon属性。

如何获得这些字段的汇总最大值和分钟数?

1 个答案:

答案 0 :(得分:1)

您可以使用stats指标汇总这样做:

{
  "size": 0,
  "aggs": {
    "lat": {
      "stats": {
        "field": "location.lat"
      }
    },
    "lon": {
      "stats": {
        "field": "location.lon"
      }
    }
  }
}

您将获得纬度和经度的最小值和最大值。

如果您不想计算不必要的值,您还可以使用minmax指标聚合,如下所示:

{
  "size": 0,
  "aggs": {
    "min_lat": {
      "min": {
        "field": "location.lat"
      }
    },
    "max_lat": {
      "max": {
        "field": "location.lat"
      }
    },
    "min_lon": {
      "min": {
        "field": "location.lon"
      }
    },
    "max_lon": {
      "max": {
        "field": "location.lon"
      }
    }
  }
}