Как искать по всем атрибутам с помощью DSL-запроса? - PullRequest
0 голосов
/ 06 августа 2020

Как проверить, что значение содержит строку

Ниже приведены примеры данных. Мне нужно найти любые атрибуты, которые: Thomas

  • Вы можете видеть, что у меня только Томас в первом документе. Итак, первый документ нужно вернуть. В основном один документ, если существует какое-либо поле поиска, мне нужно получить этот документ
   {
       "id": "Accounting 101",
       "dataproduct": "E3",
       "professor": {
           "name": "Thomas Baszo",
           "department": "finance",
           "facutly_type": "part-time",
           "email": "baszot@onuni.com"
           },
       "students_enrolled": 27,
       "course_publish_date": "2015-01-19",
       "course_description": "Act 101 is a course from the business school on the introduction to accounting that teaches students how to read and compose basic financial statements"
   }
   
   PUT /data/test/2
   {
       "name": "Accounting 101",
       "room": "E3",
       "professor": {
           "name": "Sachin Baszo",
           "department": "finance",
           "facutly_type": "part-time",
           "email": "baszot@onuni.com"
           },
       "students_enrolled": 27,
       "course_publish_date": "2015-01-19",
       "course_description": "Act 101 is a course from the business school on the introduction to accounting that teaches students how to read and compose basic financial statements"
   }

1 Ответ

0 голосов
/ 06 августа 2020

Вы можете использовать строку запроса для поиска по любому полю.

GET /_search
{
  "query": {
    "query_string": {
      "query": "Thomas"
    }
  }
}

default_field (Необязательно, строка) Поле по умолчанию, в котором вы будете sh искать, если нет поля предоставляется в строке запроса.

По умолчанию используется параметр индекса index.query.default_field, который имеет значение по умолчанию *. Значение * извлекает все поля, подходящие для запросов терминов, и фильтрует поля метаданных. Все извлеченные поля затем объединяются для построения запроса, если не указан префикс.

...