聚合
聚合 常见三种类型 关键词【aggs】
桶聚合 : 按照文档字段进行分组
- TermAggregation:按照字段分组
- Date Histogram:按照日期阶梯分组,例如一周为一组,或者一月为一组
度量聚合 Metric:用来计算一些值
- Avg:求平均值
- Max:求最大值
- Min:求最小值
- Stats:同时求max、min、avg、sum等
管道聚合: 嵌套聚合
参加聚合的字段 必须是: keyword、日期、数值、布尔类型
格式:
GET /hotel/_search
{
"size": 0, // 设置size为0,结果中不包含文档,只包含聚合结果
"aggs": { // 定义聚合
"brandAgg": { //给聚合起个名字
"terms": { // 聚合的类型,按照品牌值聚合,所以选择term
"field": "brand", // 参与聚合的字段
"size": 20 // 希望获取的聚合结果数量
}
}
}
}
GET /hotel/_search
{
"size": 0,
"aggs": {
"brandaggs": {
"terms": {//桶聚合类型
"field": "brand",
"size": 20
},
"aggs":{
"score_stats":{
"stats": {//度量聚合类型
"field": "score"
}
}
}
}
}
}