neo4j
  1. neo4j-merge-clause

Merge Clause - (Neo4j Write Clauses)

In Neo4j, the MERGE clause is used in a WRITE transaction to either create a new node or update an existing node if it already exists in the database. It is one of the most powerful clauses in Neo4j and can be used to merge data into the graph database.

Syntax

The basic syntax of the MERGE clause is as follows:

MERGE (node:Label {property: value})
ON CREATE SET node.property = value
ON MATCH SET node.property = value

Here, node is the name of the node that will be merged. Label is the label attached to the node and property is the name of the property to be merged. value is the value of the property to be merged.

The ON CREATE and ON MATCH clauses are optional and specify what should happen if the MERGE clause creates or matches an existing node.

Example

Suppose we have a graph database with a Person node that has properties name and age. We can use the MERGE clause to either create a new node or update an existing node.

MERGE (p:Person {name: 'John', age: 35})
ON CREATE SET p.created_at = timestamp()
ON MATCH SET p.updated_at = timestamp()

If the Person node with name "John" and age 35 already exists, the MERGE clause will update the updated_at property with the current timestamp. If the node does not exist, the MERGE clause will create a new node with the specified properties and add the created_at property with the current timestamp.

Output

The output of the MERGE clause is a new or updated node in the database. The exact output will depend on whether the MERGE clause created a new node or updated an existing one.

Explanation

The MERGE clause is used to merge data into the graph database in Neo4j. The clause creates a new node or updates an existing one, depending on whether a matching node already exists in the database. The ON CREATE and ON MATCH clauses are optional and specify what should happen if a new node is created or an existing node is matched.

Use

The MERGE clause can be used to import new nodes and relationships into a graph database or to update existing nodes and relationships. It's a powerful and flexible tool that allows for granular control over how data is merged into the database.

Important Points

  • The MERGE clause is used to either create a new node or update an existing node in the graph database.
  • The ON CREATE and ON MATCH clauses are optional and specify what should happen if a new node is created or an existing node is matched.
  • The MERGE clause is a powerful tool for importing and updating data in a Neo4j graph database.

Summary

The MERGE clause is used to merge data into a Neo4j graph database. The clause can create new nodes or update existing ones, depending on whether a matching node already exists in the database. The ON CREATE and ON MATCH clauses are optional and specify what should happen if a new node is created or an existing node is matched. The MERGE clause is a powerful and flexible tool for importing and updating data in a graph database.

Published on: