Neo4j 缺少关系的所有最短路径

Neo4j 缺少关系的所有最短路径,neo4j,cypher,Neo4j,Cypher,我一直在使用所有最短路径从根节点检索特定数量关系中的所有关系。例如,以下查询是针对标准矩阵主题运行的 问题1: MATCH p = allshortestPaths((n:Crew)-[r*0..3]-(m)) WHERE n.name = 'Neo' UNWIND relationships(p) AS rels RETURN COLLECT(DISTINCT rels) 问题2: MATCH (n:Crew)-[r*0..3]-(m) WHERE n.name = 'Neo' UNWIND

我一直在使用所有最短路径从根节点检索特定数量关系中的所有关系。例如,以下查询是针对标准矩阵主题运行的

问题1:

MATCH p = allshortestPaths((n:Crew)-[r*0..3]-(m))
WHERE n.name = 'Neo' UNWIND relationships(p) AS rels
RETURN COLLECT(DISTINCT rels)
问题2:

MATCH (n:Crew)-[r*0..3]-(m)
WHERE n.name = 'Neo' UNWIND r AS rels
RETURN COLLECT(DISTINCT rels)
第二个例子按预期工作,但allShortestPaths的例子忽略了Morpheus和Trinity之间的关系

知道为什么吗?

allShortestPaths示例省略了Morpheus和Trinity之间的关系,因为Neo和Trinity之间的最短路径不包括省略的关系

allShortestPaths示例返回Neo和每个不同节点之间的最短路径,该节点最多相隔3步。由于Neo和Trinity之间已经有一条直接的一步路径,因此这两个节点之间的任何更长路径都将被忽略。

allShortestPaths示例省略了Morpheus和Trinity之间的关系,因为Neo和Trinity之间的最短路径不包括省略的关系

allShortestPaths示例返回Neo和每个不同节点之间的最短路径,该节点最多相隔3步。由于近地天体和Trinity之间已经有一条直接的一步路径,因此将忽略这两个节点之间任何更长的路径