apoc.refactor.extractNode
Syntax |
|
||
Description |
Expands the given |
||
Input arguments |
Name |
Type |
Description |
|
|
The relationships to turn into new nodes. Relationships can be of type |
|
|
|
The labels to be added to the new nodes. |
|
|
|
The type of the outgoing relationship. |
|
|
|
The type of the ingoing relationship. |
|
Return arguments |
Name |
Type |
Description |
|
|
The internal id of the original entity. |
|
|
|
The copied entity. |
|
|
|
Any error that occurred during the copy process. |
Usage Examples
The examples in this section are based on the following sample graph:
CREATE (origin:Airport {code: "LHR"})
CREATE (destination:Airport {code: "AMS"})
CREATE (origin)-[:FLIGHT {number: "BA001"}]->(destination);
The following creates a Flight
node with an IN
relationship from LHR
and an OUT
relationship to AMS
:
MATCH (:Airport)-[rel:FLIGHT]->(:Airport)
WITH collect(rel) AS rels
CALL apoc.refactor.extractNode(rels,['Flight'],'OUT','IN')
YIELD input, output
RETURN input, output;
input | output |
---|---|
0 |
(:Flight {number: "BA001"}) |
We can list all the Flight
nodes by running the following query:
MATCH path = (origin)-[:IN]->(:Flight)-[:OUT]->(destination)
RETURN path;
path |
---|
(:Airport {code: "LHR"})-[:IN]→(:Flight {number: "BA001"})-[:OUT]→(:Airport {code: "AMS"}) |