Neo4j 删除节点(node)或关系等 DELETE
操作,都需要搭配 MATCH
命令,也就是先要匹配查询要删除的节点,然后再 DELETE
它,其语法如下:
MATCH (<node-name>:<label-name> {<property-name>:<property-value>})
DELETE <node-name>
删除一个独立的节点
使用 MATCH 后 DELETE 语句,以删除一个属性 project_name 为“水光补水”的“项目”标签的节点,示例如下:
MATCH(n:`项目`{project_name:'水光补水'}) DELETE n
(empty result) Rows: 0 Nodes deleted: 1
删除所有的节点及其关联的关系
MATCH (n)
DETACH DELETE n
删除全部节点及其关联的内容使用 DETACH DELETE
。
该语句会删除整个图谱,即所有的节点和关系,应当慎用,此外,当图谱规模很大时,运行该语句容易报错(OOM,Out Of Memeory)。
删除一个节点及其所有的关系
当需要删除一个节点及指向其或对外指向的关系时,使用 DETACH DELETE
:
MATCH (n {property_name:property_value})
DETACH DELETE n