Предполагая, что вы хотите, чтобы все животные типа собака имели имя $ 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» «чрезмерно дороги» [1] .