> ## Documentation Index
> Fetch the complete documentation index at: https://docs.falkordb.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> FalkorDB is a graph database that speaks the Redis protocol. Queries are issued as OpenCypher through the GRAPH.QUERY and GRAPH.RO_QUERY commands, not over Bolt or a SQL connection.
> FalkorDB implements a subset of OpenCypher with proprietary extensions. Do not assume Neo4j-only syntax or procedures are available — check /cypher/cypher-support and /cypher/known-limitations before using a clause.
> FalkorDB is the successor to RedisGraph, but they are separate products. Do not present RedisGraph commands, versions, or limitations as current FalkorDB behavior.
> Use the official clients listed in /getting-started/clients rather than generic Redis or Neo4j drivers, and prefer the language the user is already working in.
> Configuration parameters are set with GRAPH.CONFIG SET or at startup; cite the exact parameter name from /getting-started/configuration rather than inventing one.
> This site covers four products: FalkorDB (core), FalkorDB Cloud, FalkorDB Enterprise, and the GraphRAG SDK. Name which one an answer applies to, since setup and operations differ.

# REMOVE

> REMOVE is used to remove attributes from node and relationships, in addition to removing labels from nodes.

## Example graph

```cypher theme={null}
CREATE
    (billy :Player {name: 'Billy', score: 84}),
    (andy :Player {name: 'Andy', score: 21}),
    (lori :Player:Admin {name: 'Lori', score: 90})
```

## Remove attributes

The following query removes the 'score' attribute from the node
representing Andy.

```cypher theme={null}
MATCH (n {name: 'Andy'})
REMOVE n.score
RETURN n.name, n.score
```

Result:

| n.name | n.score |
| ------ | ------- |
| "Andy" | Null    |

## Remove a label from a node

To remove a label from a node use the REMOVE clause as follows:

```cypher theme={null}
MATCH (n {name: 'Lori'})
REMOVE n:Admin
RETURN n.name, labels(n)
```

Result:

| n.name | labels(n) |
| ------ | --------- |
| "Lori" | \[Player] |

## Removing multiple labels from a node

Similar to removing a single label from a node we can use the REMOVE clause
to remove multiple labels in one go

```cypher theme={null}
MATCH (n :Player {name: 'Lori'})
REMOVE n:Admin:Player
RETURN n.name, labels(n)
```

Result:

| n.name | labels(n) |
| ------ | --------- |
| "Lori" | \[]       |

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title="What is the difference between REMOVE and DELETE?">
    **DELETE** removes entire nodes or relationships from the graph. **REMOVE** removes properties from entities or labels from nodes without deleting the entity itself.
  </Accordion>

  <Accordion title="How do I remove a property from a node?">
    Use `MATCH (n {name: 'Andy'}) REMOVE n.score` to remove the `score` property. The property will return null after removal.
  </Accordion>

  <Accordion title="Can I remove multiple labels at once?">
    Yes. Use the syntax `REMOVE n:Label1:Label2` to remove multiple labels from a node in a single operation.
  </Accordion>

  <Accordion title="What is the difference between REMOVE and SET property = NULL?">
    Both achieve the same result — they remove the property from the entity. `REMOVE n.prop` and `SET n.prop = NULL` are functionally equivalent.
  </Accordion>
</AccordionGroup>
