图数据库(五):Neo4j中的更新操作

学过Mysql的人都知道,对于数据库的操作大多数都是增删改查,同样对于Neo4j图数据库也一样,今天我们就学习一下Neo4j中的更新操作。

set修改、增加属性

使用set来修改节点,属性的值,但是如果该属性没有就新增该属性

match(n:Role) set n.age=10 return n

图数据库(五):Neo4j中的更新操作_第1张图片
图数据库(五):Neo4j中的更新操作_第2张图片
此时我们可以看到,在id为172的Role节点中没有age属性,我们使用set属性就创建了一个属性
当然我们也可以使用case when

MATCH (n:Role) set(case when n.age=10 then n end).name="主角1" return n

该语句主要是说,当age的属性值为10时,就设置name的属性值为主角1,否则就什么都不做
当然使用set也可以修改多个属性值,用逗号分开。
如果我们想删除一个属性,那set也是可以做到的,可以直接设置该属性为空

MATCH (n:Role) set n.age=null RETURN n

图数据库(五):Neo4j中的更新操作_第3张图片
如果想删除所有属性那么可以设置节点为空,此时节点就剩下一个id

MATCH (n:Role) set n={} RETURN n

图数据库(五):Neo4j中的更新操作_第4张图片
使用set来复制一个节点
在开发中我们也是可以使用set来复制节点的属性

match(n:Role),(m:Role) where id(n)=173 and id(m)=174 set n=m return n

你可能感兴趣的:(Neo4J,neo4j,数据库)