Elasticsearch7.8.0版本高级查询—— 聚合查询文档
Posted 小志的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch7.8.0版本高级查询—— 聚合查询文档相关的知识,希望对你有一定的参考价值。
目录
一、初始化文档数据
-
在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/1,请求体内容为:
"name":"zhangsan", "age":20, "sex":"男"
-
在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/2,请求体内容为:
"name":"zhangsan1", "age":21, "sex":"男"
-
在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/3,请求体内容为:
"name":"zhangsan2", "age":22, "sex":"男"
-
在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/4,请求体内容为:
"name":"lisi", "age":25, "sex":"女"
二、聚合查询文档
2.1、概述
- 聚合允许使用者对 es 文档进行统计分析,类似与关系型数据库中的 group by,当然还有很
多其他的聚合,例如取最大值、平均值等等。
2.2、对某个字段取最大值 max 示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "max_age": "max":"field":"age" , "size":0
-
服务器响应结果
2.3、对某个字段取最小值 min 示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "min_age": "min":"field":"age" , "size":0
-
服务器响应结果
2.4、对某个字段求和sum 示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "sum_age": "sum":"field":"age" , "size":0
-
服务器响应结果
2.5、对某个字段取平均值 avg 示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "avg_age": "avg":"field":"age" , "size":0
-
服务器响应结果
2.6、对某个字段的值进行去重之后再取总数 示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "distinct_age": "cardinality":"field":"age" , "size":0
-
服务器响应结果
三、State 聚合查询文档
3.1、概述
stats
聚合,对某个字段一次性返回count
,max
,min
,avg
和sum
五个指标。
3.2、示例
-
在 Postman 中,向 ES 服务器发 GET请求 :http://localhost:9200/user/_search,请求体内容为:
"aggs": "stats_age": "stats":"field":"age" , "size":0
-
服务器响应结果
以上是关于Elasticsearch7.8.0版本高级查询—— 聚合查询文档的主要内容,如果未能解决你的问题,请参考以下文章
Elasticsearch7.8.0版本高级查询——组合查询文档
Elasticsearch7.8.0版本高级查询—— 模糊查询文档
Elasticsearch7.8.0版本高级查询—— 指定查询字段查询文档
Elasticsearch7.8.0版本高级查询—— 完全匹配查询文档