Почему Гремлин всегда возвращает результат?

Я добавляю ключи к графику, используя Gremlin. У меня есть много ключевых вершин с уникальным UUID.

Получение ключа работает так:

g.V().hasLabel("key").property("uuid", "foobar").count()

или же

g.V().hasLabel("key").property("uuid", "foobar")

Независимо от того, что я заполняю для foobar он всегда возвращает объект, а count всегда = 1.

Как это возможно?

1 ответ

Решение

Ни один из этих фрагментов Gremlin не использует "Получение ключа" - они фактически устанавливают для всех вершин с меткой "ключ" свойство "uuid" со значением "foobar". Возможно, это то, что вы имели в виду?

В любом случае, вы получите count() из "1", потому что ваш обход возвращает вершину, для которой вы устанавливаете свойство, и, вероятно, у вас есть только одна вершина в вашем графе с меткой "ключ".

В случае, если это не то, что вы имели в виду, чтобы получить значение ключа, вы должны вместо этого сделать:

g.V().hasLabel("key").properties("uuid","foobar").count()

Предполагая, что и "uuid", и "foobar" являются ключами свойств в одной вершине с меткой "ключ", вы получите count() из "2" вернулся.

Другие вопросы по тегам