Gremlin: получить список вершин, которые не имеют определенных полей свойств - PullRequest
0 голосов
/ 02 апреля 2019

Я хочу найти список людей, у которых отсутствует хотя бы одно из следующих свойств: Название, Имя дисплея, Имя, Фамилия, Идентификатор, Электронная почта.

Я пробовал следующее, но получаю сообщение об ошибке "java.lang.ArrayIndexOutOfBoundsException"

Если я запускаю только первые три строки, я получаю результаты для людей, у которых нет DisplayName спустые значения для этого свойства, однако столбец свойства для заголовка отсутствует.

g.V().hasLabel('people').hasNot('Title')
.or().hasLabel('people').hasNot('DisplayName')
.or().hasLabel('people').hasNot('FirstName')
.or().hasLabel('people').hasNot('LastName')
.or().hasLabel('people').hasNot('Id')
.or().hasLabel('people').hasNot('Email')

1 Ответ

0 голосов
/ 02 апреля 2019

Почему вы слишком усложняете запрос? Кто не только это:

g.V().hasLabel('people').not(
    has('Title').has('DisplayName').
    has('FirstName').has('LastName').
    has('Id').has('Email'))

Тем не менее, мне не совсем понятно, каково ваше ожидание (утверждение «однако столбца свойств для заголовка» несколько сбивает с толку), но, возможно, переписанный запрос уже поможет вам (если нет, то, пожалуйста, предоставьте некоторые выборочные данные и ожидаемый результат, который всегда облегчает ответы на вопросы, связанные с прохождением).

...