apoc.refactor.rename.type
Procedure
apoc.refactor.rename.type(oldType STRING, newType STRING, rels LIST<RELATIONSHIP>, config MAP<STRING, ANY>)
- renames all RELATIONSHIP
values with type oldType
to newType
.
If a LIST<RELATIONSHIP>
is provided, the renaming is applied to the RELATIONSHIP
values within this LIST<RELATIONSHIP>
only.
== Signature
apoc.refactor.rename.type(oldType :: STRING, newType :: STRING, rels = [] :: LIST<RELATIONSHIP>, config = {} :: MAP) :: (batches :: INTEGER, total :: INTEGER, timeTaken :: INTEGER, committedOperations :: INTEGER, failedOperations :: INTEGER, failedBatches :: INTEGER, retries :: INTEGER, errorMessages :: MAP, batch :: MAP, operations :: MAP, constraints :: LIST<STRING>, indexes :: LIST<STRING>)
Input parameters
Name | Type | Default |
---|---|---|
oldType |
STRING |
null |
newType |
STRING |
null |
rels |
LIST<RELATIONSHIP> |
[] |
config |
MAP |
{} |
Output parameters
Name | Type |
---|---|
batches |
INTEGER |
total |
INTEGER |
timeTaken |
INTEGER |
committedOperations |
INTEGER |
failedOperations |
INTEGER |
failedBatches |
INTEGER |
retries |
INTEGER |
errorMessages |
MAP |
batch |
MAP |
operations |
MAP |
constraints |
LIST<STRING> |
indexes |
LIST<STRING> |
Usage Examples
The examples in this section are based on the following sample graph:
CREATE (mark:Engineer {name: "Mark", city: "London"})
CREATE (jennifer:Engineer {name: "Jennifer", city: "St Louis"})
CREATE (michael:Engineer {name: "Michael", city: "Dresden"})
CREATE (jim:Engineer {name: "Jim", city: "London"})
CREATE (alistair:Engineer {name: "Alistair", city: "London"})
MERGE (jim)-[:COLLEAGUES {since: date("2006-05-01")}]->(alistair)
MERGE (mark)-[:COLLEAGUES {since: date("2018-02-01")}]->(jennifer)
MERGE (mark)-[:COLLEAGUES {since: date("2013-05-01")}]->(michael);
The following changes the relationship type between Jim and Alistair from COLLEAGUES
to FROLLEAGUES
:
MATCH (:Engineer {name: "Jim"})-[rel]->(:Engineer {name: "Alistair"})
WITH collect(rel) AS rels
CALL apoc.refactor.rename.type("COLLEAGUES", "FROLLEAGUES", rels)
YIELD batches, total, timeTaken, committedOperations
RETURN batches, total, timeTaken, committedOperations;
batches | total | timeTaken | committedOperations |
---|---|---|---|
1 |
1 |
0 |
1 |
After this query has run, we’ll have the following graph: