Зачем использовать apo c вместо cypher для простых запросов? - PullRequest
1 голос
/ 29 мая 2020

Я написал (и оптимизировал, используя «ПРОФИЛЬ») запрос Cypher, который отвечает на вопросы соседей узла по данному узлу. Теперь я нахожу процедуру apo c (apoc.neighbors.athop), которая, кажется, делает то же самое.

Версия APO C лучше? Быстрее? Более надежный?

Я понимаю значение APO C, когда в обычном Cypher нет аналога для данного поведения. В случае сбора соседей Cypher кажется простым:

MATCH (target:SomeLabel)
WITH target

MATCH (target)-[:ADJOINS]-(neighbor:SomeLabel)
WITH target, neighbor

Насколько я понимаю, аналог APO C это:

MATCH (target:SomeLabel)
WITH target

CALL apoc.neighbors.athop(target, "ADJOINS", 1)
YIELD node
RETURN node

Почему я должен выбрать последнее вместо первый?

...