apoc.refactor.to

详细信息

语法

apoc.refactor.to(rel, endNode, config) :: (input, output, error)

描述

将给定的 RELATIONSHIP(关系)重定向到给定的终端 NODE(节点)。

输入参数

名称

类型

描述

关系

RELATIONSHIP

需要重定向的关系。

endNode

NODE

关系应该指向的新终端节点。

config

MAP

{ failOnErrors = false :: BOOLEAN }。请注意,虽然建议使用 { failOnErrors = true } 以确保事务一致性并防止部分更改应用,但这不是默认设置,因为这可能会破坏现有的实现。APOC 2025.01 中引入

返回参数

名称

类型

描述

input

INTEGER(整数)

给定关联关系的 ID。

输出

RELATIONSHIP

更新类型后的新关联关系的 ID。

错误 (error)

STRING

如果发生错误,则返回错误消息。

使用示例

本节中的示例基于以下图数据

MERGE (person1:Person {name: "Michael"})
MERGE (person2:Person {name: "Ryan"})
MERGE (person3:Person {name: "Jennifer"})

MERGE (person1)-[:FRIENDS]->(person2);

以下操作将 FOLLOWS 关系中的终端节点从 Ryan 更改为 Jennifer

MATCH (:Person {name: "Michael"})-[rel:FRIENDS]->()
MATCH (jennifer:Person {name: "Jennifer"})
CALL apoc.refactor.to(rel, jennifer, { failOnErrors = true })
YIELD input, output
RETURN input, output;

如果我们执行此查询,将产生以下输出

结果
input 输出

32

[:`FRIENDS`]

此时图表显示如下

apoc.refactor.to2