如何在多个字段上执行聚合?那就是我想在" field1"上列出术语聚合的结果。和" field2",不是单独的,而是在同一个桶中。在弹性搜索中是否可能?
答案 0 :(得分:1)
答案 1 :(得分:0)
如下所述使用sub-aggregation
:
{
"size" : 0,
"aggs": {
"group_By_field1": {
"terms": {
"field": "field1"
},
"aggs" : {
"group_By_Field2" : {
"terms": {
"field": "field2"
}
}
}
}
}
}
答案 2 :(得分:0)
这可以使用脚本完成,如下所示:
{
"aggs": {
"my_agg": {
"terms": {
"script": "doc['field_1'].values + doc['field_2'].values"
}
}
}
}
注意:应将性能视为合并多个字段进行聚合需要付出代价。
阅读here