BodyBuilder.js Запросить любой массив

Я создаю запрос Elastic Search, который запрашивает два поля с помощью BodyBuilder.js.

Одна сторона запроса - строка, соответствующая типу события, другая принимает массив строк и удовлетворяется, если какое-либо совпадение.

Запрос (тип) && AnyQuery(arrayOfStrings)

Какой рекомендуемый способ комбинировать запросы и как запрашивать любой массив?

1 ответ

Думаю, ты мог бы:

bodybuilder()
  .query("term", "event_type", "my_event_type")
  .orQuery("terms", "event_type", [
    "my_event_type1",
    "my_event_type2",
    "my_event_type3"
  ]).build();

уступающий

{
   "query": {
      "bool": {
         "must": {
            "term": {
               "event_type": "my_event_type"
            }
         },
         "should": [
            {
               "terms": {
                  "event_type": [
                     "my_event_type1",
                     "my_event_type2",
                     "my_event_type3"
                  ]
               }
            }
         ]
      }
   }
}
Другие вопросы по тегам