小编Jet*_*Kam的帖子

Neo4j - 根据关系属性查找两个节点之间的最短路径

我试图弄清楚是否有一些基于关系总和获得两个节点之间的最短距离,给出了这个例子: neo4j图像示例

上图代码:

CREATE (some_point_1:Point {title:'Some Point 1'})
CREATE (some_point_2:Point {title:'Some Point 2'})
CREATE (some_point_3:Point {title:'Some Point 3'})
CREATE (some_point_4:Point {title:'Some Point 4'})
CREATE (some_point_5:Point {title:'Some Point 5'})
CREATE (some_point_6:Point {title:'Some Point 6'})

CREATE (some_point_1)-[:distance {value:100}]->(some_point_2)
CREATE (some_point_2)-[:distance {value:150}]->(some_point_4)
CREATE (some_point_1)-[:distance {value:200}]->(some_point_3)
CREATE (some_point_3)-[:distance {value:300}]->(some_point_4)
CREATE (some_point_2)-[:distance {value:500}]->(some_point_5)
CREATE (some_point_4)-[:distance {value:300}]->(some_point_5)
CREATE (some_point_5)-[:distance {value:300}]->(some_point_6)
CREATE (some_point_6)-[:distance {value:300}]->(some_point_1)
Run Code Online (Sandbox Code Playgroud)

在此示例中,最短路径应为:some_point_1> some_point_2> some_point_4> some_point_5(100 + 150 + 300 = 550)

Cypher可以这样吗?

neo4j

1
推荐指数
1
解决办法
3764
查看次数

标签 统计

neo4j ×1