apoc.case

此过程已弃用。请改用 Cypher 的 条件查询

此过程不建议在多线程中运行,因此并行运行时(Parallel runtime)不支持该过程。有关更多信息,请参阅 Cypher 手册 → 并行运行时

详细信息

语法

apoc.case(conditionals [, elseQuery, params ]) :: (value)

描述

对于给定 LIST<ANY> 中的每一对条件和只读查询,此过程将运行第一个条件判断为真的查询。如果所有条件都不为真,则改为运行 ELSE 查询。

输入参数

名称

类型

描述

conditionals

LIST<ANY>

条件列表,其中每个条件都是一对:第一个元素是谓词,第二个是基于该谓词执行的 Cypher 查询。

elseQuery

STRING

当所有条件都判断为假时要执行的 Cypher 查询。默认值为:''。

params

MAP

要在执行的 Cypher 查询中使用的参数映射。默认值为:{}

返回参数

名称

类型

描述

MAP

从执行的 Cypher 查询返回的结果。

使用示例

apoc.case
CALL apoc.case([
  false, 'RETURN "firstFalse" as b',
  false, 'RETURN "secondFalse" as b',
  true, 'RETURN "firstTrue" as b'
])
Cypher 的条件查询
WHEN false THEN RETURN {b: "firstFalse"} AS value
WHEN false THEN RETURN {b: "secondFalse"} AS value
WHEN true THEN RETURN {b: "firstTrue"} AS value
结果

{b: "firstTrue"}

apoc.case
CALL apoc.case([
  false, 'RETURN "firstFalse" as b',
  false, 'RETURN "secondFalse" as b',
  false, 'RETURN "thirdFalse" as b'
  ],
  'RETURN "elseBranch" as b'
)
Cypher 的条件查询
WHEN false THEN RETURN {b: "firstFalse"} AS value
WHEN false THEN RETURN {b: "secondFalse"} AS value
WHEN false THEN RETURN {b: "thirdFalse"} AS value
ELSE RETURN {b: "elseBranch"} AS value
结果

{b: "elseBranch"}

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