Я строю запрос эластичного поиска, который получает запрос элементов по географическим границам.
Я хочу отфильтровать список, чтобы он содержал только те элементы, которые не соответствуют атрибутам элементов id
и accountOwner
.
Так что мне может быть возвращен список предметов изasticsearch
[{
"account": 1,
"id": 1,
"name": "first"
},
{
"account": 1,
"id": 2,
"name": "second"
},
{
"account": 2,
"id": 2,
"name": "second"
}
]
Я хочу передать в запрос фильтр, который говорит, что не включает в мой список возвращаемых элементов, которые соответствуют [{account:1,id:2}]
(да, это должен быть массив)
То, что я хочу получить от ElasticSearch, это приведенный выше список, но без единого элемента в указанном выше массиве.
Я пытался расшифровать это в документах, но не совсем нашел то, что искал.
Мой запрос (который может не относиться к вопросу):
{
"query": {
"bool": {
"must": [{
"geo_distance": {
"distance": "100km",
"start": {
"lat": -37.8642399,
"lon": 144.9732028
}
}
}],
"must_not": [{
"id": 2,
"account": 1
}]
}
}
}
Итак, чтобы было ясно, я хочу удалить только те элементы, которые не совпадают как для учетной записи, так и для идентификатора