#elasticsearch
#elasticsearch
Вопрос:
Я работал над ES 7.10.1, и у меня есть следующий простой поисковый запрос:
GET /megacorp/_doc/_search?q= last_name:"smith" first_name:"jane"
Я думаю, что я указал and
условие, которое означает: выполняются только оба условия, тогда документ будет запрошен
но я получил два документа обратно:
Первый:
"first_name" : "Jane",
"last_name" : "Smith",
второй:
"first_name" : "John",
"last_name" : "Smith",
Второй совпадает только с last_name, а не с first_name , я не уверен, почему этот документ также запрашивается.
Ответ №1:
Вы можете использовать предложение boolean query must
with, которое упрощает понимание синтаксиса вашего запроса. почему вы работаете с синтаксисом Lucene, который отличается от понимания?
В вашем случае, похоже, это работает, поскольку OR
, следовательно, оба результата приходят.
Комментарии:
1. Конечно, спасибо, я знаю search api с телом запроса, сейчас я изучаю ES и экспериментирую с search api с параметром запроса…