3.3.10. DELETE

The DELETE clause is used to delete graph elements — nodes, relationships or paths.

For removing properties and labels, see Section 3.3.11, “REMOVE”. Remember that you can not delete a node without also deleting relationships that start or end on said node. Either explicitly delete the relationships, or use DETACH DELETE.

The examples start out with the following database:

alt

3.3.10.1. Delete single node

To delete a node, use the DELETE clause.

Query. 

MATCH (n:Useless)
DELETE n

Result. 

+-------------------+
| No data returned. |
+-------------------+
Nodes deleted: 1

3.3.10.2. Delete all nodes and relationships

This query isn’t for deleting large amounts of data, but is nice when playing around with small example data sets.

Query. 

MATCH (n)
DETACH DELETE n

Result. 

+-------------------+
| No data returned. |
+-------------------+
Nodes deleted: 3
Relationships deleted: 2

3.3.10.3. Delete a node with all its relationships

When you want to delete a node and any relationship going to or from it, use DETACH DELETE.

Query. 

MATCH (n { name: 'Andres' })
DETACH DELETE n

Result. 

+-------------------+
| No data returned. |
+-------------------+
Nodes deleted: 1
Relationships deleted: 2