现在遇到个需求,一条数据有id,date,max,min几个字段,需要找到大于minDate的最小的date所在的数据,取它的min,找到小于maxDate的最大date所在的数据,取它的max,然后求(max - min)/ max,然后对这个值进行排序取最大的几个
数据mapping:
数据mapping:
{
"id": {
"type": "keyword"
},
"date": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},"max":{
"type":"double"
},"min":{
"type":"double"
}
}
我想到的是先terms把id聚合起来,然后用max_bucket_selector和min_bucket_selector找到最大最小的日子,然后再对它们分别的min和max做计算,但是发现这俩selector没法写,date_histogram只能抓到每一天的日期,抓不到最大和最小的数据,各位老哥有没建议?
2 个回复
rochy - rochy_he
赞同来自:
God_lockin
赞同来自: