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

标签 graph neo4j cypher graph-databases

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

Graph

最佳答案

我不知道这是否是最优雅的解决方案,但我认为它有效。首先,我使用标识符获取从最右侧节点传出的关系的所有唯一 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

关于graph - 获取每个关系的路径长度 neo4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50081283/

相关文章:

graph - 如何在 Gremlin Server ( Titan 1.0) 中更新 Vertex 的值

algorithm - VF2算法步骤举例

java - 如何从 Java 中的 ExecutionResult 中提取集合?

Neo4j : How to combine multiple cyphers into one?

java - CYPHER QUERY :-Change Arrayreturned by collect(n. name) 在 Arraylist (util) 的 cypher 查询中

javascript - d3 平行坐标日期时间轴

python - 在大图中高效地找到最短路径

date - Neo4j 日期和日期时间比较问题

neo4j - 使用 py2neo WriteBatch 将大图数据插入 Neo4j

neo4j - 如何对项目进行计数,然后同时返回第一个项目和计数?