apoc.create.node
Procedure APOC Core
apoc.create.node(['Label'], {key:value,…}) - create node with dynamic labels
Usage Examples
This procedure provides a more flexible way of creating nodes than Cypher’s CREATE
clause.
The example below shows equivalent ways of creating a node with the Person
and Actor
labels, with a name
property of "Tom Hanks":
CALL apoc.create.node(["Person", "Actor"], {name: "Tom Hanks"});
CREATE (node:Person:Actor {name: "Tom Hanks"})
RETURN node;
node |
---|
(:Person:Actor {name: "Tom Hanks"}) |
But this procedure is mostly useful for creating nodes that have dynamic labels or properties. For example, we might want to create a node with labels or properties passed in as parameters.
The following creates labels
and properties
parameters:
:param labels => (["Human", "MovieStar"]);
:param properties => ({name: "Tom Cruise", placeOfBirth: "Syracuse, New York, United States"});
The following creates a node with labels and properties based on the previously defined parameters:
CALL apoc.create.node($labels, $properties);
node |
---|
(:Human:MovieStar {name: "Tom Cruise", placeOfBirth: "Syracuse, New York, United States"}) |