小编DRB*_*DRB的帖子

在单个查询中更新多个节点,每个节点具有不同的属性/值对

迈克尔·亨格在2013年初回答了类似的问题,但我无法将他对Neo4j/Cypher 3.x的回应翻译出来.

https://groups.google.com/forum/#!msg/neo4j/qZWhbMtMCTE/r3W7OZfCgAgJ

每个节点都具有UUID值的属性.在某些情况下,"second"属性是布尔值,在其他情况下是字符串.

我想更新其中一些节点,更改或添加属性到每个节点.

(n1 {uuid:"foo1", enabled: true})
(n2 {uuid:"foo2", example: "foo"})
(n3 {uuid:"foo3"})
Run Code Online (Sandbox Code Playgroud)

我当然可以为每个创建一个单独的MERGE和SET语句,但我希望有一个更优雅的解决方案:

MATCH (S {uuid:"foo0"})
MERGE (n2 {uuid:"foo2"})-[:BELONGS_TO]->(S)
    SET n2.example="bar"
MERGE (n3 {uuid:"foo3"})-[:BELONGS_TO]->(S)
    SET n3.enabled=true
Run Code Online (Sandbox Code Playgroud)

neo4j cypher

0
推荐指数
1
解决办法
692
查看次数

标签 统计

cypher ×1

neo4j ×1