Neo4j - Remove 子句
REMOVE 子句用于从图形元素(节点或关系)中删除属性和标签。
Neo4j CQL DELETE 和 REMOVE 命令之间的主要区别是 −
- DELETE操作用于删除节点及其关联关系。
- REMOVE 操作用于删除标签和属性。
删除属性
您可以使用 MATCH 和 REMOVE 子句删除节点的属性。
语法
以下是使用 REMOVE 子句删除节点属性的语法。
MATCH (node:label{properties . . . . . . . }) REMOVE node.property RETURN node
示例
在继续该示例之前,创建一个名为 Dhoni 的节点,如下所示。
CREATE (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"})
以下是使用 REMOVE 子句删除上述创建的节点的 Cypher 查询示例。
MATCH (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"}) REMOVE Dhoni.POB RETURN Dhoni
要执行上述查询,请执行以下步骤 −
第 1 步 − 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。 使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。 在这里,您可以观察到名为 POB 的节点已被删除。
从节点中删除标签
与属性类似,您还可以使用删除子句从现有节点中删除标签。
语法
以下是从节点中删除标签的语法。
MATCH (node:label {properties . . . . . . . . . . . }) REMOVE node:label RETURN node
示例
以下是使用删除子句从现有节点删除标签的示例 Cypher 查询。
MATCH (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"}) REMOVE Dhoni:player RETURN Dhoni
要执行上述查询,请执行以下步骤 −
第 1 步 − 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。 使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。 在这里,您可以观察到标签已从节点中删除。
删除多个标签
您还可以从现有节点中删除多个标签。
语法
以下是从节点中删除多个标签的语法。
MATCH (node:label1:label2 {properties . . . . . . . . }) REMOVE node:label1:label2 RETURN node
示例
在继续该示例之前,请创建一个节点 Ishant,如下所示。
CREATE (Ishant:player:person {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"})
以下是一个示例 Cypher 查询,用于从节点中删除多个标签。
MATCH (Ishant:player:person {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) REMOVE Ishant:player:person RETURN Ishant
要执行上述查询,请执行以下步骤 −
第 1 步 − 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。 使用 URL http://localhost:7474/ 打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
第 2 步 − 将所需的查询复制并粘贴到 $ 美元提示符中,然后按以下屏幕截图中突出显示的player按钮(以执行查询)。
结果
执行后,您将得到以下结果。 在这里,您可以观察到指定的标签已从节点中删除。