我想从top_hits聚合的结果中提取日期直方图。下面的代码返回每个“myhash”的第一个“mydata”。
{
"aggs": {
"agg_indexing": {
"filter": {
"term": {
"_index": "myindex"
}
},
"aggs": {
"agg_class": {
"terms": {
"field": "myhash",
"size": 10000
},
"aggs": {
"agg_top": {
"top_hits": {
"sort": [
{
"mytime": {
"order": "asc"
}
}
],
"_source": {
"includes": [
"mytime",
"mydata"
]
}
}
}
}
}
}
}
}
}
所以我想把这个结果作为直方图。以下代码是我的意图,但它不起作用。
{
"aggs": {
"agg_indexing": {
"filter": {
"term": {
"_index": "y_paylog"
}
},
"aggs": {
"agg_class": {
"terms": {
"field": "idhash",
"size": 10000
},
"aggs": {
"agg_top": {
"top_hits": {
"sort": [
{
"logtime": {
"order": "asc"
}
}
],
"_source": {
"includes": [
"logtime",
"pay"
]
}
},
"aggs": {
"hist_over_date": {
"date_histogram": {
"field": "mytime",
"interval": "24h"
},
"aggs": {
"revenue_sum": {
"sum": {
"field": "mydata"
}
}
}
}
}
}
}
}
}
}
}
}
我认为必须有另一种方法来调用变量,而不是“mydata”。
提前致谢。
++
{
"size": 0,
"aggs": {
"agg_indexing": {
"filter": {
"term": {
"_index": "y_paylog"
}
},
"aggs": {
"agg_class": {
"terms": {
"field": "idhash",
"size": 10000
},
"aggs": {
"agg_hist": {
"date_histogram": {
"field": "logtime",
"interval": "24h"
},
"aggs": {
"agg_top": {
"top_hits": {
"sort": [
{
"logtime": {
"order": "asc"
}
}
],
"_source": {
"includes": [
"logtime",
"pay"
]
},
"size": 1
}
}
}
}
}
}
}
}
}
}