neo4j cypher避免重复路径

时间:2015-05-24 16:27:49

标签: neo4j cypher

我有以下查询,我想避免重复路径(也是simetric)。

MATCH (a:PERSON)-[:LIKES]->(b:PERSON)-[:LIKES]->(a) return a,b

我已尝试使用DISTINCT关键字,但我收到了语法错误。

我正在寻找类似的东西(但也失败了):

MATCH path=(a:PERSON)-[:LIKES]->(b:PERSON)-[:LIKES]->(a) 
where DISTINCT(path)
return a,b

1 个答案:

答案 0 :(得分:1)

您可以添加一个简单的测试,以确保一个比另一个更大,因为您不会多次接收相同的配对。

MATCH (a:PERSON)-[:LIKES]->(b:PERSON)-[:LIKES]->(a) 
where id(b) > id(a)
return a,b