Neo4j - Remove Clause



The REMOVE clause is used to remove properties and labels from graph elements (Nodes or Relationships).

The main difference between Neo4j CQL DELETE and REMOVE commands is −

  • DELETE operation is used to delete nodes and associated relationships.
  • REMOVE operation is used to remove labels and properties.

Removing a Property

You can remove a property of a node using MATCH along with the REMOVE clause.

Syntax

Following is the syntax to remove a property of a node using the REMOVE clause.

MATCH (node:label{properties . . . . . . . }) 
REMOVE node.property 
RETURN node 

Example

Before proceeding with the example, create a node named Dhoni as shown below.

CREATE (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"})

Following is a sample Cypher Query to remove the above created node using the REMOVE clause.

MATCH (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"}) 
REMOVE Dhoni.POB 
RETURN Dhoni 

To execute the above query, carry out the following steps −

Step 1 − Open the Neo4j desktop App and start the Neo4j Server. Open the built-in browser app of Neo4j using the URL http://localhost:7474/ as shown in the following screenshot.

Browser App

Step 2 − Copy and paste the desired query in the dollar prompt and press the play button (to execute the query) highlighted in the following screenshot.

Remove Ranchi

Result

On executing, you will get the following result. Here, you can observe that the node named POB was deleted.

Remove Property Result

Removing a Label From a Node

Similar to property, you can also remove a label from an existing node using the remove clause.

Syntax

Following is the syntax to remove a label from a node.

MATCH (node:label {properties . . . . . . . . . . . }) 
REMOVE node:label 
RETURN node 

Example

Following is a sample Cypher Query to remove a label from an existing node using the remove clause.

MATCH (Dhoni:player {name: "MahendraSingh Dhoni", YOB: 1981, POB: "Ranchi"}) 
REMOVE Dhoni:player 
RETURN Dhoni 

To execute the above query, carry out the following steps −

Step 1 − Open the Neo4j desktop App and start the Neo4j Server. Open the built-in browser app of Neo4j using the URL http://localhost:7474/ as shown in the following screenshot.

Browser App

Step 2 − Copy and paste the desired query in the dollar prompt and press the play button (to execute the query) highlighted in the following screenshot.

Remove Player

Result

On executing, you will get the following result. Here, you can observe that the label was deleted from the node.

Remove Result

Removing Multiple Labels

You can also remove multiple labels from an existing node.

Syntax

Following is the syntax to remove multiple labels from a node.

MATCH (node:label1:label2 {properties . . . . . . . . }) 
REMOVE node:label1:label2 
RETURN node

Example

Before proceeding with the example, create a node Ishant as shown below.

CREATE (Ishant:player:person {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) 

Following is a sample Cypher Query to remove multiple labels from a node.

MATCH (Ishant:player:person {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) 
REMOVE Ishant:player:person 
RETURN Ishant 

To execute the above query, carry out the following steps −

Step 1 − Open the Neo4j desktop App and start the Neo4j Server. Open the built-in browser app of Neo4j using the URL http://localhost:7474/ as shown in the following screenshot.

Browser App

Step 2 − Copy and paste the desired query in the dollar prompt and press the play button (to execute the query) highlighted in the following screenshot.

Remove Multi Label

Result

On executing, you will get the following result. Here, you can observe that the specified labels were deleted from the node.

Multi Label Result
Advertisements