neo4j:找到路径并删除重复项

时间:2014-10-11 14:44:10

标签: neo4j cypher

如果我有一系列链接的节点: A< - B - > C - > D

match (n)-[r]-(m) return n,r,m会给我[A,B],[B,A],[B,C],[C,B],[C,D],[D,C]

如果我只想返回每对中的一对,该怎么办?[A,B], [B,C], [C,D]

如何丢弃忽略路径方向的'重复'?该数据的性质使得路径方向是流动的且不可预测的。我可以在代码中得到重复结果的答案,但我想知道是否有办法让 neo4j 提前完成工作。

1 个答案:

答案 0 :(得分:0)

使用方向箭头:

match (n)-[r]->(m) return n,r,m

如果您想要无向路径,则该对将返回两次

你可以通过强加订单来限制它。

match (n)-[r]->(m) where id(n) < id(m) return n,r,m