Как выполнить фильтрованный поиск в ElasticSearch по полю подобъекта?Например, в моем документе есть поле id
и поле data
, которое представляет собой массив JSON того, как данные хранились в моей базе данных:
{_id: 000, merchant: "merchant_1", email: "hello@email.com"}
Мой поисковый запрос:
"query": {
"filtered": {
"filter": { "term": { "data.merchant": "merchant_1"} },
"query": {
"query_string": {"query": "hello"} }
}
}
}
ничего не возвращает, но выполнение запроса только с строкой запроса hello
возвращает правильные строки.Изменение "data.merchant"
=> "merchant"
также ничего не меняет.
Я что-то здесь не так делаю?
Обновление: В итоге я просто использовал логическое значениезапрос, который сработал.