首页 > 解决方案 > 使用 UNWIND 时如何访问 Neo4j 结果?

问题描述

我正在学习 Go 并且正在编写我的第一个使用 Neo4j 的 Go 应用程序。我将 UNWINDING 切片分配的结构。文档充其量是稀疏的,但是,我能够找到这个要点,并且我正在运行这个确切的代码,但我的 Neo4j 凭据和密码查询除外。https://gist.github.com/ali-ince/558d3c2a300d803ffc0bfdcbf166f3ff

我修改了 Cypher 查询以返回整个用户,而不仅仅是 ID。

"UNWIND $list AS item CREATE (u:User) SET u = item RETURN u"

如果我修改第 82 行以输出值:

fmt.Println(result.Record().Values())

我得到: [0xc0000a6ea0] [0xc0000a6fc0] [0xc0000a70e0] [0xc0000a7200] [0xc0000a7320] [0xc0000a7440] [0xc0000a7560]

打印只是.Record()给了我:

&{[u] [0xc0000e07e0]} &{[u] [0xc0000e0930]} &{[u] [0xc0000e0a80]} &{[u] [0xc0000e0bd0]} &{[u] [0xc0000e0d20]} &{[u] [0xc0000e0e70]} &{[u] [0xc0000e0fc0]} 我主要希望为创建的每个节点获取 Neo4j 节点 ID。我知道我可以返回,但想知道如何查看所有属性。我不知道如何处理上面的任何内容。

谢谢!

标签: goneo4j

解决方案


UNWIND将列表转换为单独的行。如果$list包含 10 个项目,则创建并返回 10 个用户。通过您的驱动程序的每个用户都是一个节点的表示。因此,您的结果将包含一个neo4j.Node实例列表,您可以从中查看属性等。


推荐阅读