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

问题描述 投票:2回答:1

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

Graph

graph neo4j cypher graph-databases
1个回答
2
投票

我不知道它是否是最优雅的解决方案,但我认为它有效。首先,我将使用标识符从最右侧节点获取所有唯一的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
© www.soinside.com 2019 - 2024. All rights reserved.