2012-05-08 125 views
0

是否有可能在Cypher QL中有子查询?我现在面临的问题是找到黑社会。我使用下面的代码:Cypher中的子查询QL

START n=node(*) MATCH triad=nbrl--n--nbrr RETURN count(triad) 

与查询的问题上面它计算黑社会两次。例如既有
B -- A -- C

C -- A -- B
返回为三单元组。
我的计划是摆脱一个nbrl--n--nbrr xor nbrr--n--nbrl。但我不能想到除了子查询之外的任何事情。任何帮助,高度赞赏。
更新:
发现另一个问题。考虑下面的图表:

A -- B 

查询START n=node(*) MATCH triad=nbrl--n--nbrr RETURN triad回报:

A | B | A 
B | A | A 

回答

0

这是否帮助?

START n=node(*) MATCH triad=nbrl-->n--nbrr RETURN count(triad) 
+0

问题是我的图没有定向,所以所有的边(Cypher QL中的关系)都是双向的。这基本上意味着'nbrl - n - nbrr'和'nbrl - > n - nbrr'之间没有区别。 –