neo4j - 迭代子路径与路径元素
问题描述
这个问题适用于任何 neo4j 路径,但为了清楚起见,让我们借用答案 2 中的公交路线数据到这篇文章
我们可以运行这个查询
MATCH p=(o:BusStop)-[*]->(d:BusStop) RETURN p
正如我们所料,得到一堆节点和关系。
p [ { "id": 1 } , { "fare": 10, "day": "Sat" }... 等等
我对上述问题的看法是,在 Python 中处理结果时,我不得不遍历各个节点和关系。
但是,如果我想遍历完整的 (startnode)-[*]-(endnode)子路径怎么办?
在浏览器中,各个子路径由水平线分隔。如何获得与 py2neo 中的那些分隔符等效的值?
谢谢。
解决方案
Neo4j 结果是一个记录流。对于给定的查询,流中的每条记录都将是一个单独的路径,因此您将使用返回结果游标的方法来迭代每个路径。
如果您想要一个作为路径集合的结果,您可以返回它:
RETURN collect(p) as results
推荐阅读
- python - 选择用于 H2O 交叉验证的 nfolds 是否会改变使用的数据百分比?
- arrays - 在java中的数组中查找第二个重复元素
- mysql - 关于 Kubernetes 与外部世界联网的困惑
- html - Blogger 上的错误 HTML:Erreur d'analysis XML,ligne 2269,colonne 2:文档中根元素之后的标记必须格式正确
- json - 如何使用python从嵌套的json响应中提取多个json值
- sql-server - SQL Server Service Broker 性能影响
- javascript - 我需要在 Redux 应用程序的代码中的这些地方写什么(remake pure react to redux)?
- android - 卡片视图不显示,我的 recyclerview 正在工作,但卡片视图在应用程序中不可见
- c++ - 如何在 debian:latest docker 上安装 gcc-9
- swift - 编写一个泛型函数以从 Swift 中的多个枚举中获取公共变量