微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ES聚合查询

1、分类:分桶聚合,指标聚合,管道聚合

2、分桶聚合

按照 type 字段分桶,并按照 doc_count 升序排序

3、指标聚合

eg1、查询 volume 最大值 max

eg2、查询所有指标

4、管道聚合(二次聚合)

计算根据 type 字段分类后 volume 值最小的 type 字段值

5、嵌套聚合

eg1、统计不同类型(type)商品的不同级别(lv)的数量(求数量,按谁分桶,谁就用 terms)

eg2、按照 lv 分桶,输出每个桶的具体价格信息

eg3、统计不同类型商品不同级别的价格信息

eg4、统计不同类型商品不同级别的价格信息(指标stats)和标签信息(分类数量terms)

eg5、统计每个商品类型中,不同档次分类商品中(这句话可有可无,如果没有需要自己分析需求然后补充出来),平均价格最低的档次 ********* 分析:要想得到平均价格最低的档次,首先要计算出不同档次分类的平均价格,所以需要在 lv_bucket 下计算平均价格,最后要得到的是档次,就在档次桶的桶名下写min_bucket

 

6、基于查询结果的聚合(在哪个查询结果的基础上聚合,则在其平级下写 aggs )

eg1、查询价格大于 5000 的 标签

eg2、基于 filter 的 aggs

7、基于聚合的查询(其实只是换了个顺序,表示查询结果对聚合结果没有影响。可以理解为先聚合后查询

8、基于范围的分桶

注意:其中 _term 已经被 _key 取代,用于对 key 进行排序,若要对 doc_count 排序,则用 _count

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐