我有一些节点和关系,例如A -> B ->C -> D
;所以B->D
BCD是一个循环,现在我想从节点A获取所有关系和每个关系距离;我期望结果如下:
{startNode: A, endNode: B, rel:FRIEND, distanceFromAtoEndnode: 1},
{startNode: B, endNode: C, rel:FRIEND, distanceFromAtoEndnode: 2},
{startNode: C, endNode: D, rel:FRIEND, distanceFromAtoEndnode: 3},
{startNode: B, endNode: D, rel:FRIEND, distanceFromAtoEndnode: 2}
和我的密码:
match p=(n:Person {name:"A"})-[r*1..9]-(m:Person) return last(r) as rel,length(p) as distanceFromAtoEndnode
但这总是会得到一件我不需要的物品:
{startNode: D, endNode: C, rel:FRIEND, distanceFromAtoEndnode: 3},
如果有像“8”这样的双循环,那么结果会更糟
我怎样才能写密码?