获取每个关系的路径长度 neo4j

Get path lengths for every relationship neo4j

所以我有一个看起来像这样的图表(从最右边开始),其中的关系具有一个名为 Isnad 的唯一数字属性。我想编写一个查询来获取每个 Isnad 从起始节点到结束节点的长度,但我无法弄清楚。我不知道如何分别遍历每个 Isnad 的每条路径。有帮助吗?

我不知道这是否是最优雅的解决方案,但我认为它可行。首先,我使用标识符获取从最右侧节点传出的关系的所有唯一 Isnad 值。然后我使用 variable-length pattern matching,其中所有关系对于 Isnad 属性 具有相同的值。然后返回Isnad值和路径长度。

match ({id:'unique-identifier-of-rightmost-side-node'})-[r]->()
with distinct r.Isnad as Isnad
match p = ()-[*{Isnad : Isnad}]->()
return Isnad, length(p) as Length