У меня есть узел, и мне нужно найти все отношения с родителями до него.Neo4j parent-child отношения
Таким образом, если у меня есть: A-> B-> C-> D (корень) А-> Е-> Р-> Д (корень)
А представляет собой узел, у меня и я нужны все предки этого.
Я попробовал Cypher запрос:
MATCH (n:yo {name:"foo"})-[:HELLO*1..]->(p:yo) RETURN p
Но он показывает мне список, как это: B, C, D, E, F. Таким образом, связь между ними теряется. Возможно ли иметь такой список, как [[B-> C-> D], [E-> F-> D]]
Я видел этот запрос на веб-сайте, и он работает. Но он возвращает [[A, B], [A, B, C], [A, B, C, D]]. Мне не нужны субпаты.
start c = node:node_auto_index (object_id = ‘10179’ )
MATCH path = c <- [ : PARENT_OF* ] – p
return distinct
length (path) AS PATH_LENGTH
, extract (n in nodes (path) : n.object_id) as the_path
order by length (path)
Работы как шарм. Спасибо Dave: D – blackmamba
Еще одна вещь: Что делать, если я хочу узел в коллекции тоже? – blackmamba
просто удалите функцию 'tail()' из оператора return и вы получите полный список узлов в пути. –