分类

APOC 库包含一个过程,可将节点上的字符串属性值替换为指向具有该属性值的唯一类别节点的关系。

创建类别节点的过程

限定名称 类型

apoc.refactor.categorize(sourceKey STRING, type STRING, outgoing BOOLEAN, label STRING, targetKey STRING, copiedKeys LIST<STRING>, batchSize INTEGER) - 从图中具有指定 sourceKey 属性的 NODE 值创建新的分类 NODE 值。新的分类 NODE 值随后通过给定类型的 RELATIONSHIP 连接到原始 NODE 值。

过程 (Procedure) Cypher 25 中已弃用

示例

以下示例将更详细地说明此过程。

以下操作创建了带有 favoriteColor 属性的节点
CREATE (:Person {name: "Mark", favoriteColor: "Red"})
CREATE (:Person {name: "Jennifer", favoriteColor: "Blue"})
CREATE (:Person {name: "David", favoriteColor: "Red"})

为了运行此过程,必须在新节点标签上存在唯一约束。在本例中

CREATE CONSTRAINT ON (n:Color) ASSERT n.Color IS UNIQUE
以下操作将所有 favoriteColor 属性转换为指向 Color 节点的 FAVORITE_COLOR 关系,这些节点具有匹配的 color 属性。
CALL apoc.refactor.categorize('favoriteColor', 'FAVORITE_COLOR', true, 'Color', 'color', [], 100)

上述查询将返回以下图形

apoc.categorize