go - 使用 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。我知道我可以返回,但想知道如何查看所有属性。我不知道如何处理上面的任何内容。
谢谢!
解决方案
UNWIND
将列表转换为单独的行。如果$list
包含 10 个项目,则创建并返回 10 个用户。通过您的驱动程序的每个用户都是一个节点的表示。因此,您的结果将包含一个neo4j.Node
实例列表,您可以从中查看属性等。
推荐阅读
- android - 更新到 4.0 后无法在 Android Studio 中创建 Activity 或 Fragment
- cocoa - 为什么我的按钮在 High Sierra 中消失了
- qemu - 在 mmio 期间检索 QEMU VM 的堆栈跟踪
- python - 如何通过 Android 手机上的应用程序向我的 Python 脚本发送命令?
- google-cloud-platform - Ansible 将自定义角色或权限绑定到 GCP IAM
- c - 带有 OpenSSL 的 C 语言中的 HMAC-SHA256 - 如何获得正确的输出
- pandas - 如何访问默认的熊猫数据框绘图调色板?
- reactjs - 无法使用 fetch() 从 carquery API 获取 API
- r - 如何获得二进制矩阵的所有唯一排列及其在R中的等级
- mongodb - 在 MongoTemplate 聚合中按 id 列表过滤对象列表