Neo4j 两个密码查询之间的差异

Neo4j 两个密码查询之间的差异,neo4j,cypher,py2neo,Neo4j,Cypher,Py2neo,我试图运行这两个密码查询,但我不理解它们之间的区别。这里的目的是在给定的两个节点之间找到多条路径,以便该路径中的通过时间之和为升序 问题1: 问题2: 在这个例子中,我从Q1中得到了最好的结果,而且这些操作需要很长时间。 还有其他更好的方法可以使用图形算法吗?我认为使用Dijkstra算法可以做到这一点,关于如何指定cost_参数以及如何使用的任何帮助都将非常有用。 我使用的是py2neo和neo4j。neo4j有一个,事实上它不是解释而是分析 您还可以找到一些关于执行计划的文档,以解释每个操作

我试图运行这两个密码查询,但我不理解它们之间的区别。这里的目的是在给定的两个节点之间找到多条路径,以便该路径中的通过时间之和为升序

问题1:

问题2:

在这个例子中,我从
Q1
中得到了最好的结果,而且这些操作需要很长时间。 还有其他更好的方法可以使用图形算法吗?我认为使用Dijkstra算法可以做到这一点,关于如何指定cost_参数以及如何使用的任何帮助都将非常有用。 我使用的是py2neo和neo4j。

neo4j有一个,事实上它不是解释而是分析

您还可以找到一些关于执行计划的文档,以解释每个操作

具有复杂查询的执行计划示例:

MATCH p =(:`ml`  { placeId: 960 })-[:ETA*0..10]->(:`ml`  { placeId: 814 })
return p, p as allshortestPaths, 
REDUCE(time=0, r in relationships(p) | time+r.transit_time) AS totalTime 
ORDER BY totalTime ASC
MATCH (from:`ml` { placeId: 960}), (to: `ml` {placeId: 814}) , 
paths = allShortestPaths((from)-[:ETA*]->(to)) 
WITH REDUCE(time = 0, rel in rels(paths) | time + rel.transit_time) 
AS totalTime, paths 
RETURN (totalTime) 
ORDER BY totalTime ASC