问题描述
我有一个图,在其中我使用了以下密码来显示Graph中的所有路径。这将返回所有节点。 CQL:MATCH p =(root {id:'start'})-[*]->(leaf)RETURN EXTRACT(x IN NODES(p)| x.name)AS result;
我想返回节点和边,以便外行可以理解图中从根到叶的所有路径。
解决方法
可以按如下方式获取所有可用路径的列表。
MATCH p=(root {id: 'start'})-[*]->(leaf)
// limit the match to the ones that end at a leaf
WHERE NOT (leaf)-->()
RETURN DISTINCT REDUCE (s='',r in RELATIONSHIPS(p) |
s+
CASE WHEN s='' THEN '('+startNode(r).name + ')-[:'+ type(r)+']->('+ endNode(r).name+')'
ELSE '-[:'+ type(r)+']->('+ endNode(r).name+')'
END
) AS path