Я совершенно новый для Elasticsearch, так что вот мой вопрос. Я хочу сделать поисковый запрос с elasticsearch и хочу фильтровать с несколькими терминами.Elasticsearch mult term filter
Если я хочу найти пользователя 'tom', то я хотел бы иметь все совпадения, в которых пользователь 'isActive = 1', 'isPrivate = 0' и 'isOwner = 1'.
Вот мой поисковый запрос
"query":{
"filtered": {
"query": {
"query_string": {
"query":"*tom*",
"default_operator": "OR",
"fields": ["username"]
}
},
"filter": {
"term": {
"isActive": "1",
"isPrivate": "0",
"isOwner": "1"
}
}
}
}
Когда я использую 2 термины, он работает как шарм, но когда я использую 3 условия он не делает.
Спасибо за помощь!
Это полностью зависит от недели и незначительной версии elasticsearch вы используете. Фаза Луны также может оказывать влияние. Синтаксис для этого изменился больше, чем Дональд Трамп обидел иммигрантов. –
Интересно, почему существует такая несогласованность между эластичными версиями. –
Большое спасибо, этот ответ действительно помогает мне. –