elasticsearch聚合查询
Elasticsearch聚合(Aggregation)是Elasticsearch中的一个重要功能,用于计算和统计数据,并将其分类和分组。聚合可以帮助你更好地理解你的数据,从而支持一些高级查询和分析。以下是一些聚合查询的示例:
- 基本聚合查询
{ "aggs" : { "group_by_country" : { "terms" : { "field" : "country" } } } }
上面的查询将会将数据按照国家分组,并统计每个国家的文档数量。
- 聚合查询并计算平均值
{ "aggs" : { "group_by_country" : { "terms" : { "field" : "country" }, "aggs": { "avg_price": { "avg": { "field": "price" } } } } } }
上面的查询将会将数据按照国家分组,然后计算每个国家的平均价格。
- 聚合查询并计算最大值和最小值
{ "aggs" : { "group_by_country" : { "terms" : { "field" : "country" }, "aggs": { "max_price": { "max": { "field": "price" } }, "min_price": { "min": { "field": "price" } } } } } }
上面的查询将会将数据按照国家分组,然后计算每个国家的最大和最小价格。
- 聚合查询并计算百分位数
{ "aggs" : { "group_by_country" : { "terms" : { "field" : "country" }, "aggs": { "percentiles_price": { "percentiles": { "field": "price", "percents": [50, 75, 95] } } } } } }
上面的查询将会将数据按照国家分组,然后计算每个国家价格的50、75和95百分位数。
总之,Elasticsearch聚合查询提供了一种强大的工具,可以帮助你更好地理解你的数据,从而支持一些高级查询和分析
原文地址: http://www.cveoy.top/t/topic/eH04 著作权归作者所有。请勿转载和采集!