我有双重关系(顶点D) - [rel1] - >(顶点DB) - [rel2](顶点D)
我使用这种关系需要D之间的两个元素之间的最短路径
尝试
MATCH (d:D{d_pk:1})-[r1:DgoDB*]->()
MATCH p = allShortestPaths( (ALL (RELATIONSHIP IN r1)->()) - [r2:DBgoD*] -> (to:D) )
WHERE (to.d_pk = 70258)
RETURN d, r1, p
但是它不起作用。
有没有人有任何想法?
答案 0 :(得分:0)
如果我正确理解您的模型(并且非常欢迎任何其他说明),那么您正在寻找路径:DgoDB和:DBgoD关系以到达另一个节点。
只提供:DgoDB关系连接:D到:DB节点,并且只有:DBgoD关系连接:DB到:D节点,那么它应该足以指定您正在寻找的可变长度模式包括两组关系。
这样的事,也许?
MATCH (d:D{d_pk:1}), (to:D{d_pk:70258})
MATCH p = allShortestPaths( (d)-[r1:DgoDB|:DBgoD*]->(to) )
RETURN d, r1, p