gpt4 book ai didi

javascript - neo4j 匹配具有未知属性列表的 Node

转载 作者:行者123 更新时间:2023-12-01 00:30:17 25 4
gpt4 key购买 nike

我正在使用merge动态构建图表以避免创建重复项。我有一个查询,例如:

`MERGE(a:${node.type} {id:'${node.id}', label:'${node.label}'}) SET a += $att RETURN a`, {att:node.attributes}

所以我知道我要添加的 Node 的类型、id 和标签,但也有一个未知的属性列表。我不知道列表的长度,也不知道列表中的键。我需要合并完整的属性列表,但是按照我目前的查询方式,每次 Node 与类型、id 和标签匹配时, Node 的属性都会被重写。

我也尝试过:

 MERGE(a:${mergedObject.type} $node) RETURN a`, {node: mergedObject}

失败并显示 Neo4jError: 参数映射不能在 MERGE 模式中使用

如何匹配未知属性列表(长度/键)上的 Node ?我正在使用neo4j-driver模块。我需要整个 Node 及其所有属性都是唯一的。

最佳答案

MERGE 要求您对要使用的属性名称进行硬编码,因此无法动态向 MERGE 提供属性。

不过,您的node.js 代码可以动态生成MERGE 查询。但你必须小心地编写 Node.js 代码,避免 Cypher code injection 。避免代码注入(inject)的一种方法是生成硬编码的属性名称,但将每个属性值作为 parameter 传递。 .

关于javascript - neo4j 匹配具有未知属性列表的 Node ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58615665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com