分组计算均值_elasticsearch 笔记三 之聚合查询之分组计数、平均数、最大值、script、最小值、总和...

本文介绍了如何在 Elasticsearch 中进行分组计算,包括分组计数、平均数(avg)、最大值(max)、最小值(min)、总和(sum)的查询操作,并详细解释了术语、缺失值处理以及使用脚本计算的方法。以银行数据为例,展示了具体的查询命令和结果解析。
摘要由CSDN通过智能技术生成

本节 es 笔记目录如下:

  1. 分组计数
  2. 平均数 avg
  3. 最大值 max
  4. 最小值 min
  5. 总和 sum

此次笔记用到的数据还是前一节中导入的官方提供的bank数据,用到其他数据的,下面会提供导入方式。

首先,来看一下我们导入的数据的各个字段,使用下面命令获取(命令都在 kibana 中使用):

  "_source" : {
    
    "account_number" : 1,
    "balance" : 39225,
    "firstname" : "Amber",
    "lastname" : "Duke",
    "age" : 32,
    "gender" : "M",
    "address" : "880 Holmes Lane",
    "employer" : "Pyrami",
    "email" : "amberduke@pyrami.com",
    "city" : "Brogan",
    "state" : "IL"
  }

1、分组计数

我们对数据中state字段进行分组计数,计算数据中每个state种类出现的次数:

GET /bank/_search
{
  "size": 0,
  "aggs": {
    "group_by_state": {
      "terms": {
        "field": "state.keyword"
      }
    }
  }
}

其中,group_by_state是分组的名称,用来标识分组的名称,

terms则是用来分组的关键字,

state.keyword表示取值是state这个字段。

运行之后返回,可以看到返回结果按照state的值,作为key,以及doc_count作为count的数值结果返回。

对应于 MySQL 中的语法大致是:

SELECT state, COUNT(*)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值