Поддержка ArangoSearch для поиска по нескольким полям - PullRequest
0 голосов
/ 20 марта 2020

Поддерживает ли ArangoSearch поиск по нескольким / всем полям коллекции. Я хочу иметь возможность искать текст по всем полям данной коллекции. Поддерживает ли ArangoSearch такую ​​вещь?

1 Ответ

0 голосов
/ 20 марта 2020

Вы можете очень просто разрешить View индексировать все поля (атрибуты) ваших документов:

{
  "links": {
    "yourCollection": {
      "includeAllFields": true
    }
  },
  …
}

В запросах вам необходимо четко указать, в каких полях искать:

FOR doc IN yourView
  SEARCH doc.field1 == "foo" OR doc.field2 == "foo" OR doc.nested.field == "foo"
  RETURN doc

Невозможно (пока) express это использовать подстановочный знак, например SEARCH doc.* == "foo". Возможные обходные пути: поддерживать отдельный атрибут, который объединяет содержимое всех отдельных полей, в которых вы хотите искать (но вы должны убедиться, что он остается в синхронизации c с исходными атрибутами), или использовать построитель запросов из сортирует, чтобы создать дизъюнкцию, как указано выше.

...