ElasticSearch - 没有任何分组的聚合

时间:2016-04-20 06:50:28

标签: elasticsearch

是否可以在没有任何存储规范的情况下获得聚合?

例如,我想获得集合中所有文档的数值的SUM。

在SQL中:SELECT SUM(FIELD), COUNT(*) FROM TABLE;

1 个答案:

答案 0 :(得分:2)

是的,你可以像这样简单地指定一个顶级sum aggregation

{
  "size": 0,
  "aggs": {
    "total": {
      "sum": {
        "field": "myField"
      }
    }
  }
}

你会得到这样的答案

{
  ...
  "hits": {
    "total": 48441987,               <---- COUNT(*)
    "max_score": 0,
    "hits": []
  },
  "aggregations": {
    "total": {
      "value": 445420187457          <---- SUM(FIELD)
    }
  }
}