WITH a
MATCH p=(a)-[:rel1]->(:B)-[:rel2]->(:C)-[:rel3]->(d)<-[:rel3]-(:C)<-[:rel2]-(:B)<-[:rel1]-(a)
WITH d, ... do more things
Похоже, d узлов, где rel3 совместно используется d и: C, не возвращаются. IE p не включает пути, когда замкнутое l oop пересекает тот же край (когда «соединить точки» выглядит как «ключ», а не как «круг»). Я думаю, что это основа для базы данных графа - что вы не можете пройти один и тот же край дважды по одному и тому же пути? Есть ли способ начать с a и найти все d, которые связаны между собой: B и: C имеют общие, включая те, которые имеют одинаковые rel3, но разные rel1 и rel2, ie, чтобы не отбрасывать те d-узлы, где rel3 такие же?