前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >ElasticSearch聚合aggs入门

ElasticSearch聚合aggs入门

作者头像
leehao
发布2025-02-11 13:21:31
发布2025-02-11 13:21:31
940
举报
文章被收录于专栏:leehaoleehao

Elasticsearch是一款功能强大的开源软件,不仅可以检索排序,还可以对文档进行更复杂的操作--聚合。

1、单值聚合

Sum求和,dsl参考如下:

{ "size": 0, "aggs": { "return_balance": { "sum": { "field": "balance" } } } }

返回balance之和,其中size=0 表示不需要返回参与查询的文档。

Min求最小值

{ "size": 0, "aggs": { "return_min_balance": { "min": { "field": "balance" } } } }

返回结果

Max求最大值

{ "size": 0, "aggs": { "return_max_balance": { "max": { "field": "balance" } } } }

返回结果:

AVG求平均值

{ "size": 0, "aggs": { "return_avg_balance": { "avg": { "field": "balance" } } } }

返回结果:

Cardinality 求基数(如下示例,查找性别的基数 M、F,共两个)

{ "size": 0, "aggs": { "return_cardinality": { "cardinality": { "field": "gender" } } } }

结果为:

2、多值聚合

percentiles 求百分比

查看官方文档时候,没看懂,下面是自己测试时的例子,按照性别(F,M)查看工资范围的百分比

{ "size": 0, "aggs": { "states": { "terms": { "field": "gender" }, "aggs": { "banlances": { "percentile_ranks": { "field": "balance", "values": [ 20000, 40000 ] } } } } }

结果:

stats 统计

查看balance的统计情况:

{ "size": 0, "aggs": { "balance_stats": { "stats": { "field": "balance" } } } }

返回结果:

extended_stats 扩展统计

{ "size": 0, "aggs": { "balance_stats": { "extended_stats": { "field": "balance" } } } }

结果:

更加复杂的查询,后续慢慢在实践中道来。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-09-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、单值聚合
    • Cardinality 求基数(如下示例,查找性别的基数 M、F,共两个)
  • 2、多值聚合
    • percentiles 求百分比
    • stats 统计
    • extended_stats 扩展统计
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档