我有一个带有可选属性的索引条目。因此,例如,我有这样的条目
{
"id":1
"field1":"XYZ"
},
{
"id":2
"field2":"XYZ"
},
{
"id":3
"field1":"XYZ"
}
我想进行汇总,以告诉我填充了field1和field2的条目有多少。
预期结果应该是:
{
"field1":2
"field2":1
}
elasticsaerch甚至可以做到吗?
答案 0 :(得分:2)
是的,您可以这样做:
POST myindex/_search
{
"size": 0,
"aggs": {
"field_exists": {
"filters": {
"filters": {
"field1": {
"exists": {
"field": "field1"
}
},
"field2": {
"exists": {
"field": "field2"
}
}
}
}
}
}
}
您将得到一个这样的答案:
"aggregations" : {
"field_exists" : {
"buckets" : {
"field1" : {
"doc_count" : 2
},
"field2" : {
"doc_count" : 1
}
}
}
}