最短路径查询 returns 多条路径而不是一条路径

Shortestpath query returns many paths instead of one path

下方最短路径查询 return 多条路径而不是一条路径。

  MATCH PATHS=shortestPath((a:Endpoint{ nodeName: 'BRS-PE-SR7-X03B' }) -[*]-(b:Endpoint{ nodeName: 'LDN-PE-SR7-X03C' })  RETURN PATHS

任何人都可以解释一下它是如何计算路径和return以下场景的最短路径的。

我的理解是应该return只有一个path.Am对吗?

SHORTESTPATH 函数找到两个 特定节点之间的单个最短路径

如果多个 Endpoint 节点可以具有相同的 nodeName 值,这可以解释为什么您会得到多个最短路径。

如果这是您的结果的原因,则此查询返回的 2 个计数中至少有一个应该超过 1:

MATCH
  (a:Endpoint{ nodeName: 'BRS-PE-SR7-X03B' }),
  (b:Endpoint{ nodeName: 'LDN-PE-SR7-X03C' })
RETURN COUNT(DISTINCT a), COUNT(DISTINCT b);

REST 提供的最短路径算法API 提供两个节点之间的所有最短路径。这意味着如果多个路径中的最小跳数相同,那么您将获得所有这些最短路径。

(https://neo4j.com/docs/rest-docs/current/#rest-api-find-all-shortest-paths).