Заполнение значения массива в запросеasticsearch - PullRequest
0 голосов
/ 19 февраля 2019

Мой запрос частичного поиска по запросу выглядит так:

"match_phrase": {"taskId.keyword": {"query": ""}

Я установил taskIdдинамически в моей программе JS.Но это будущее позволяет мне установить для него один идентификатор, и, следовательно, вызов извлекает только одну запись.

У меня может быть несколько задач, идентифицированных в моей программе.Поэтому я хочу получить записи для массива идентификаторов задач.

Как мне структурировать свой запрос для него?

Можно ли сделать так:

"match_phrase ": {" taskId.keyword ": {" query ": []}

И затем динамически установить массив:

.... match_phrase ['taskId.keyword '] = динамически вычисляемый массив идентификаторов задач

1 Ответ

0 голосов
/ 19 февраля 2019

Вы можете использовать термин запроса для сопоставления нескольких идентификаторов задач.Используйте запрос, как показано ниже:

{
  "query":{
    "terms":{
      "taskId.keyword":["taskId1", "taskId2", "taskId3"]
    }
  }
}

Вы можете заменить ["taskId1", "taskId2", "taskId3"] на динамически созданный массив taskId в коде вашего приложения.

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