json - 从Elasticsearch返回单个聚合值

标签 json elasticsearch aggregate

我正在研究Elasticsearch聚合,我想获得一个聚合所有记录值的单一值。我可以使用“Range> = 0”聚合作弊,但是还有一种惯用的方法吗?

我的查询是:

{
  "size": 0,
  "aggs": { 
    "all": { 
      "range": {
        "field": "price", 
        "ranges": [{"from": 0}] }
       }
    },
    "aggs": {
      "total price": {
         "avg": {"field": "price"}}
       }
    }
}

最佳答案

ES已为您将其内置到“统计”聚合中,请使用“和”结果。

GET devdev/alert/_search
{
  "size": 0, 
 "aggs": {
   "ag1": {
     "stats": {
       "field": "price"
     }
   }
 }
}

结果:
{
   "took": 483,
   "timed_out": false,
   "_shards": {
      "total": 5,
      "successful": 5,
      "failed": 0
   },
   "hits": {
      "total": 4129196,
      "max_score": 0,
      "hits": []
   },
   "aggregations": {
      "ag1": {
         "count": 4119334,
         "min": -1,
         "max": 7004,
         "avg": 5.29581966405249,
         "sum": 21815250
      }
   }
}

关于json - 从Elasticsearch返回单个聚合值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30849118/

相关文章:

json - 无法使用 Handlebars JS 和 Ember JS 循环遍历嵌套的 JSON 数组(大写属性)

ElasticSearch ILM 不删除索引

curl -X POST -d @mapping.json + 未创建映射

postgresql - Postgres 多对多 : how to select record with exactly counted links

Python Pandas : Sort and group by, 然后对第二列的两个连续行求和以获得第三列的特定值

java - Visual Studio Code 项目名称

javascript - JSON 对象中的二分搜索

c# - 如何使用 Json.Net 将所有空值序列化为空字符串

ElasticSearch - 嵌套对象的字段名称中的点

r - 基于无序的列对聚合数据框