繁体   English   中英

Neo4J Cypher - 从路径变量展开节点

[英]Neo4J Cypher - Unwinding nodes from a path variable

我见过展开列表的例子,但没有看到展开路径列表的例子。 例如,我如何找到一种类型的节点和另一种类型之间的所有最短路径,并返回或获取找到的节点,在本例中,节点特别是b

MATCH p = allShortestPaths((a: person)-[:PARENT_OF]-(b: person))
UNWIND nodes(p) ... //get all of the b nodes
RETURN b

注意:我想在查询中使用 b 用于其他目的(省略),因此需要将路径展开为b节点列表。

匹配所有最短路径后,如果您只想要b节点作为结果,您可以简单地RETURN b 我不认为你需要解开它,因为b在你的 MATCH 中被清楚地标识了

编辑:

MATCH p = allShortestPaths((a: person)-[:PARENT_OF]-(b: person))
WITH collect(b) as bees
UNWIND bees as b
//do something
return b

好像你只是想看到所有person有来电节点PARENT_OF从另一个节点person节点。 如果是这样,这应该有效:

MATCH ()-[:PARENT_OF]->(b:person)
RETURN DISTINCT b;
MATCH p = allShortestPaths((a: person)-[:PARENT_OF]-(b: person))
with nodes(p) as nodes
with nodes[size(nodes)-1] as b
return b

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM