Elasticsearch универсальный поисковый запрос - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть строка "Джон Авраам 18".Я хочу создать поисковый запрос, который будет искать разделенные пробелами слова из строки в индексе.Этот поиск должен быть установлен для всех полей индекса, и вы не знаете, какое значение должно быть сопоставлено (установлено) с полем.Итак, у меня есть документ:

{
  "_index": "recipient",
  "_type": "recipient",
  "_id": "37a15258d9",
  "_version": 1,
  "_score": 1,
  "_source": {
    "name": "Jhon ",
    "surname": "Abraham",
    "age": "18 ",
}

, и я не знаю, каким полям значений индекса соответствуют Джон, Авраам и 18.У меня просто есть строка, и по этой строке я хочу искать во всех полях индексных документов.Я могу разделить его на отдельные слова по пробелам, но я не знаю точных полей отображения для поиска.Кроме того, я хочу сделать это на Java.Буду признателен за помощь.

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Вы можете использовать запрос на несколько совпадений, вводя все поля или символы подстановки.

Запрос на совпадение

0 голосов
/ 26 декабря 2018

Я думаю, вы должны использовать query_string вasticsearch.

https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html

Это решит вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...