如何在neo4j中更新现有关系?

5

我有两个节点A和B。 它们之间存在关系R,这个关系有一些属性P。

我该如何使用新的值更新关系R中的属性P? 我尝试使用合并(merge),但这会创建一个新的关系,而我想要更新现有的关系。

2个回答

19
在您的节点和关系上进行匹配,然后使用SET更新关系属性。例如:
MATCH (a {name:"A"})-[r]-(b {name:"B"})
SET r.P = "bar"

通常情况下,当查找特定节点时,最好在查询中使用标签,并使用索引或唯一约束(以哪种方式最合理为准)来加速查找。


将属性 foo 重命名为 P 可能会更清晰一点。 - manonthemat

3
Match (a:A), (b:B) Merge (a)-[r:YourRelations]->(b) Set r.P="new Prop" Return r

Before

After


谢谢。我正在寻找一个使用MERGE的解决方案。 - vittorio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接