|| apoc.refactor.normalizeAsBoolean - APOC 核心文档 - Neo4j 文档

apoc.refactor.normalizeAsBoolean

详情

语法

apoc.refactor.normalizeAsBoolean(entity, propertyKey, trueValues, falseValues)

描述

将给定属性重构为 BOOLEAN 类型。

输入参数

名称

类型

描述

entity

ANY

其属性将被规范化为布尔值的节点或关系。

propertyKey

STRING

要规范化的属性键的名称。

trueValues

LIST<ANY>

true 值的可能表示。

falseValues

LIST<ANY>

false 值的可能表示。

使用示例

本节示例基于以下示例图:

CREATE (:Person {prop: 'Y', name:'A'}),
       (:Person {prop: 'Yes', name:'B'}),
       (:Person {prop: 'NO', name:'C'}),
       (:Person {prop: 'X', name:'D'}),
       (:Person {prop: true, name:'E'}),
       (:Person {prop: false, name:'F'});

我们希望将某些属性转换为布尔值,其中 YYes 转换为 true,NO 转换为 false。不符合这些可能性的其他属性将设置为 null,这也包括 BOOLEAN 值本身。

以下操作将对所有具有 prop 属性的节点中的所有适用 BOOLEAN 值进行规范化:
MATCH (n)
CALL apoc.refactor.normalizeAsBoolean(n,'prop',['Y','Yes'],['NO'])
WITH n
ORDER BY n.id
RETURN n.name AS name, n.prop AS prop;
结果
名称 prop

"A"

true

"B"

true

"C"

false

"D"

null

"E"

null

"F"

null

如果你想保持 BOOLEAN 值不变,请将它们包含在 trueValuesfalseValues 参数中。

MATCH (n)
CALL apoc.refactor.normalizeAsBoolean(n,'prop',['Y','Yes', true],['NO', false])
WITH n
ORDER BY n.id
RETURN n.name AS name, n.prop AS prop;
结果
名称 prop

"A"

true

"B"

true

"C"

false

"D"

null

"E"

true

"F"

false

© . This site is unofficial and not affiliated with Neo4j, Inc.