1
我有PERSON
图,PERSON
可以FRIEND
s的PERSON
并能OWN
OBJECT
例如:的Neo4j避免循环图重复
a-FRIEND-b
a-FRIEND-c
b-FRIEND-c
c-OWN-"car"
我希望让别人谁需要的东西,找朋友或一个朋友看自己的这个东西的朋友,所以我用:
MATCH (me:PERSON)-[:FRIEND*1..2]-(p:PERSON)-[o:OWN]->(obj:OBJECT)
WHERE me.id = {userId}
RETURN p
但是,如果“一”想“车”我得到的“C”两次,因为我可以有两种方式到达那里:
a-FRIEND-c-OWN-"car"
a-FRIEND-b-FRIEND-c-OWN-"car"
我该如何确保只能得到“c”一次?
或者你可能'RETURN P,COUNT(*)'给多少路径有一个迹象,这可能表明一个实力 –
而你可以嵌入ID检查;-) ... MATCH(me:PERSON {id:{userId}})...' –