在Neo4j的CQL(Cypher Query Language)中,SET子句用于更新节点或关系的属性。以下是SET子句的基本用法:

更新节点的单个属性:
// 更新名字为'John'的Person节点的age属性
MATCH (p:Person {name: 'John'})
SET p.age = 31
RETURN p

在这个例子中,使用MATCH找到名字为'John'的Person节点,然后使用SET子句将其age属性更新为31。

更新节点的多个属性:
// 更新名字为'Alice'的Person节点的age和city属性
MATCH (p:Person {name: 'Alice'})
SET p.age = 26, p.city = 'London'
RETURN p

在这个例子中,使用MATCH找到名字为'Alice'的Person节点,然后使用SET子句将其age和city属性同时更新。

添加新属性:
// 给名字为'Bob'的Person节点添加新的hobby属性
MATCH (p:Person {name: 'Bob'})
SET p.hobby = 'Reading'
RETURN p

在这个例子中,使用MATCH找到名字为'Bob'的Person节点,然后使用SET子句添加新的hobby属性。

在关系上使用SET:
// 更新具有FRIEND关系的节点之间的关系属性
MATCH (a:Person)-[r:FRIEND]-(b:Person)
WHERE a.name = 'John' AND b.name = 'Alice'
SET r.strength = 'strong'
RETURN a, r, b

在这个例子中,使用MATCH找到具有FRIEND关系的节点之间的关系,并使用SET子句将关系的strength属性更新为'strong'。

SET子句是非常灵活的,可以用于更新节点或关系的属性,添加新属性,甚至移除属性。在使用SET时,请确保你了解正在执行的操作,并仔细考虑其影响。




转载请注明出处:http://www.zyzy.cn/article/detail/9291/Neo4j