遍历子路径与路径元素

iterating over subpaths vs path elements

问题适用于任何neo4j路径,但为了清楚起见,我们借用答案2中的巴士路线数据到此post

Neo4J | Cypher Aggregation on list of relationships

我们可以运行这个查询

MATCH p=(o:BusStop)-[*]->(d:BusStop) RETURN p

并得到一堆节点和关系,正如我们所期望的那样。

p [ { "id": 1 } , { "fare": 10, "day": "Sat" }... and so on

我的上述问题是,在处理 Python 中的结果时,我不得不迭代各个节点和关系。

但是如果我想遍历完整的 (startnode)-[*]-(endnode) 子路径怎么办?

在浏览器中,各个子路径由水平线分隔。我如何获得与 py2neo 中的那些分隔符等效的内容?

谢谢。

Neo4j 结果是一个记录流。对于给定的查询,流中的每条记录都是一个单独的路径,因此您可以使用 returned results cursor 的方法遍历每个路径。

如果您想要一个包含路径集合的结果,您可以 return 改为:

RETURN collect(p) as results