Запрос Elasticsearch для фильтрации на основе списка - PullRequest
0 голосов
/ 05 июля 2018

Допустим, у нас есть следующие списки в ES. (Каждый список является частью отдельного документа)

[1], [2], [1, 2], [1, 2, 3, 4]

Если мы запросим список [1, 2] , ES должен вернуть только результаты ниже.

[1], [2], [1, 2]

Обратите внимание, что при использовании условия запроса будет возвращено [1, 2, 3, 4] , что также не является ожидаемым результатом.

Может ли кто-нибудь предложить запрос ES для этого сценария?

1 Ответ

0 голосов
/ 06 июля 2018

если объект отображается как вложенный тип данных, вы можете искать что-то вроде listValue, равное 1, а также 2, это приведет к [1, 2] или [2, 1], потому что ES не обрабатывает заказы в простых массивах .

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

https://www.elastic.co/guide/en/elasticsearch/reference/6.3/nested.html

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