需求:统计每天有多少条数据,以及某字段的平均值。
1. 使用DateHistogramAggregationBuilder
按天统计,再嵌入aggs取平均值。
如果要对结果进行排序,在 AggregationBuilders 加上 .order(Histogram.Order.COUNT_DESC)
AvgAggregationBuilder avgAggregationBuilder = AggregationBuilders
.avg("avg_aggsName")
.field("fieldName");
DateHistogramAggregationBuilder dateHistogramAggregationBuilder = AggregationBuilders
.dateHistogram("aggsName")
.field("fieldName") //可以是time
.dateHistogramInterval(DateHistogramInterval.DAY)
.format("yyyy-MM-dd")
.minDocCount(0L)
.subAggregation(avgAggregationBuilder);
2. 如果再新增一条需求:只统计近一个月的数据。
那么就加一条filter,