Cypher Fundamentals-Creating Nodes
QUIZ
Creating Nodes
Creating nodes
In this lesson you will learn how to write Cypher code to create nodes in the graph.
Using the Movies data model, you will create and execute Cypher code to create actors and movies in our graph.
We use the MERGE
keyword to create a pattern in the database.
After the MERGE
keyword, we specify the pattern that we want to create. Usually this will be a single node or a relationship between two nodes.
Suppose we want to create a node to represent Michael Cain. Run this Cypher code to create the node.
MERGE (p:Person {name: 'Michael Cain'})
It creates a single node in the graph. Note that when you use MERGE
to create a node, you must specify at least one property that will be the unique primary key for the node.
Verify that the node was created.
MATCH (p:Person {name: 'Michael Cain'})
RETURN p
Executing multiple Cypher clauses
We can also chain multiple MERGE
clauses together within a single Cypher code block.
MERGE (p:Person {name: 'Katie Holmes'})
MERGE (m:Movie {title: 'The Dark Knight'})
RETURN p, m
This code creates two nodes, each with a primary key property. Because we have specified the variables p and m, we can use them in the code to return the created nodes.
Using CREATE
instead of MERGE
to create nodes
Cypher has a CREATE
clause you can use for creating nodes. The benefit of using CREATE
is that it does not look up the primary key before adding the node. You can use CREATE
if you are sure your data is clean and you want greater speed during import. We use MERGE
in this training because it eliminates duplication of nodes.
Check your understanding
1. Creating a node
Which Cypher keywords can you use to create nodes?
-
INSERT
ADD
CREATE
MERGE
2. Using MERGE
When using MERGE
to create a node, what must you specify?(2,4)
The number of properties the node will have.
The label for the node.
The index to be used for the node.
The name and value for the property that will be the primary key for the node.
HINT
What two things are used to uniquely identify a node in the graph?