是否可以根据其他过滤器的结果过滤文档?
例如,如果我在
上过滤文件"_source": [ "animalName" ],
{ "term": { "animalType": "dog" }}
如何过滤选择所有具有狗名称的动物?
答案 0 :(得分:0)
假设您希望所有类型为dog的动物名为 $ someName ,请尝试以下操作:
{
"_source: ["animalName", "animalWeight", ...],
"query": {
"bool": {
"filter": [{
"term": {"animalType": "dog"}
},{
"term": {"animalName": $someName}
}]
}
}
}
<强> [UDATE] 强>
你的意思是这样的吗?
select distinct a2.*
from animals a1
join animals a2 on a1.name = a2.name
where 1
and a1.type = 'dog'
and a2.type != 'dog'
我不知道如何以弹性的方式实现这一目标,因为SQL式连接&#39;是非常昂贵的&#39; [1]