apoc.refactor.collapseNode
Procedure APOC Core
apoc.refactor.collapseNode([node1,node2],'TYPE') collapse node to relationship, node with one rel becomes self-relationship
Signature
apoc.refactor.collapseNode(nodes :: ANY?, type :: STRING?) :: (input :: INTEGER?, output :: RELATIONSHIP?, error :: STRING?)Usage Examples
The examples in this section are based on the following sample graph:
CREATE (flight:Flight {number: "BA001"})
CREATE (origin:Airport {code: "LHR"})
CREATE (destination:Airport {code: "AMS"})
CREATE (flight)<-[:OUT]-(origin)
CREATE (flight)-[:IN]->(destination);The following query collapses the Flight node, replacing it with a CONNECTED to relationship:
MATCH (flight:Flight {number: "BA001"})
CALL apoc.refactor.collapseNode([flight],'CONNECTED_TO')
YIELD input, output
RETURN input, output;| input | output | 
|---|---|
| 10 | [:CONNECTED_TO {number: "BA001"}] | 
If we execute this query, it will result in the following graph:
