sql
http://ip:9200/_sql?sql=select count(cf.serial_no.raw),sum(cf.educate_amount) from f_mid_order_details where cf.create_time>=‘2020-01-01 00:00:00’ and cf.delete_flag=0 GROUP BY (date_histogram(‘format’=‘yyyy-MM’, ‘alias’=’@timestampAggs’, ‘interval’=‘1M’, ‘field’=‘cf.create_time’))
java实现
SearchRequestBuilder requestBuilder = eS2ExcellUtilExport.initEsClient().prepareSearch("f_mid_order_details").setSearchType(SearchType.QUERY_THEN_FETCH);
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
String format = "yyyy-MM";
//间隔 年类型较为特殊
DateHistogramInterval interval = DateHistogramInterval.MONTH;
//dateHistogram
AggregationBuilder aggregationBuilder = AggregationBuilders.dateHistogram("dateHistogram")//自定义名称
.dateHistogramInterval(interval)//设置间隔
.minDocCount(0)/