我试图找出是否可以对一个字段进行分面/聚合,如果该字段(这是一个数组)包含 1 个或多个记录。
例如 - 假设我的索引中有 3 个文档,都在“用户”类型下。
{
"id": 1,
"name": "Thomas",
"surname": "Test",
"photos": []
},
{
"id": 2,
"name": "Thomas",
"surname": "Test",
"photos": [
"photo 1",
"photo 2",
"photo 3"
]
},
{
"id": 3,
"name": "Thomas",
"surname": "Test",
"photos": [
"photo 1",
"photo 2",
"photo 3"
]
}
我想要某种方式(使用聚合)来返回“拥有(或没有,因为我可以从他们的个人资料中的_totalHits)照片中减去的用户数量。” 在此示例中,预期结果将是2,因为 2 个用户有照片,或1,因为 1 个用户没有照片。显然,我想要的首选是返回有照片的用户数量的那个。
这可能吗?如果是这样 - 我将使用哪种类型的聚合来完成此操作?