我正在编写一个弹性搜索查询,有效载荷看起来像
“ userData”:[ { “ subject1”:1234, “主题2”:678 } ]
我编写了一个查询,如果我想获取单个字段的平均值,该查询可以很好地工作
查询:
{
"aggs": {
"student_data": {
"date_histogram": {
"field":"@timestamp",
"calendar_interval":"minute"
},
"aggs": {
"marks_avg": {
"avg": {
"field":"subject1"
}
}
}
}
}
}
我想要获得的也是subject2的平均值。
有点像:
"avg": {
"field":"subject1",
"field":"subject2"
}
答案 0 :(得分:1)
使用多个聚合查询应该可以:
{
"aggs": {
"student_data": {
"date_histogram": {
"field":"@timestamp",
"calendar_interval":"minute"
},
"aggs": {
"subject1_avg": {
"avg": {
"field":"subject1"
}
},
"subject2_avg": {
"avg": {
"field":"subject2"
}
}
}
}
}
}