Как найти точное слово, используя query_string - PullRequest
1 голос
/ 27 марта 2019

У меня есть значения поля Elasticsearch slim и extra slim. Если я ищу slim, я получаю extra slim включенных документов в результате. Я хочу соответствовать точному слову. Я использовал fieldName.keyword при запросе, но он не работал, если в поле было несколько слов.

Я использовал запрос

{"query_string": {"query": "(fit:slim)" } }

Как сопоставить только указанное значение, используя query_string?

1 Ответ

1 голос
/ 27 марта 2019

При поиске точного соответствия с полем используйте термин запроса в поле keyword.

Запрос:

{
  "query": {
    "term": {
      "fit.keyword": "slim"
    }
  }
}

ОБНОВЛЕНИЕ: Через query_string

Для точного совпадения с помощью query_string заключите строку в кавычки для сопоставления.

{
  "query": {
    "query_string": {
      "query": "fit.keyword:\"extra slim\""
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...