neo4j - 如何为单个节点显示两个以上的路径

时间:2016-05-18 10:50:24

标签: neo4j cypher

当b有两个关系时:

  

匹配(a)< - (b)--->(c)

     

返回a,b,c

但如果b有两个以上的关系怎么办:

  

匹配(a)< - (b)--->(c)(b)--->(d)

     

返回a,b,c,d

这给出了错误。

我如何执行此关系

See screen Shot Here

2 个答案:

答案 0 :(得分:2)

您的match声明中似乎有一些拼写错误:

match (a)<--(b)--->(c) (b)--->(d)

首先:(b)(c)之间的箭头有太多破折号((b)(d)之间的箭头也是如此) 第二:你有两个匹配路径,它们需要用逗号分隔。

所以......试试:

match (a)<--(b)-->(c), (b)-->(d)

答案 1 :(得分:0)

除了David的答案之外,如果你想获得与(b)相关的所有节点,你可以使用以下内容:

match (b)-[r*n]-(p) return b, p;

其中r是您的关系名称,n是关系深度,我假设您的情况为1