从密码查询中排除某些关系

时间:2013-04-14 10:34:16

标签: neo4j cypher

我正在寻找一个cypher查询,它查找节点中的所有传出关系,不包括一对。这是一个例子:

START node=node(5), excludeRels=rel(7,8,9)
MATCH node-[rels]->x
RETURN rels

但我想从返回的excludeRels中排除rels中的rel。因此,如果node(5)具有传出关系6,7,8,9和10,我希望返回6和10。

这可能吗?

2 个答案:

答案 0 :(得分:2)

如果其他人想知道,我发现上述问题的答案是:

START node=node(5), excludeRels=rel(7,8,9)
WITH node, collect(excludeRels) as erels
MATCH node-[rel]->()
WHERE NOT rel IN erels
RETURN rel

答案 1 :(得分:0)

这也应该有用

START node=node(5), excludeRels=rel(7,8,9)
MATCH node-[rel]->()
WHERE rel <> excludeRels
RETURN rel