如下图所示,我们具有具有关系但具有不同属性的节点。在路径中的关系应具有公共属性的情况下,如何找到节点A与节点E之间的最短路径?例如,此处仅应提供从节点A到节点B具有属性“ a”的THE PATH,因为此处a是常见的。
编辑 我想根据a和下一个节点之间的可用关系(这里的关系属性分别是a,b和c)找到节点a和e之间的最短路径。如何找到关系属性相同的a和e之间的最短路径(这里属性a)例如,它应仅返回具有属性a的路径(该路径将为a> b> d> e)
我找到了答案,答案是:
Match (a:node)-[r1]->() with collect(r1.property) as m MATCH p=shortestPath( (a:node)-[:r1*]->(e:node) ) AND ALL(x in relationships(p) WHERE x.propery in m) RETURN p