运行 Cypher 片段

我们可以将 Cypher 作为一种安全的、具备图感知能力且经过部分编译的脚本语言在 APOC 中使用。

过程概述

下表描述了所支持的过程

限定名称 类型 版本

apoc.cypher.parallel

- 通过 paramMap 中键为 keyList 的列表,并行执行片段

过程

Apoc Extended

apoc.cypher.parallel2

- 通过 paramMap 中键为 keyList 的列表,以批处理方式并行执行片段

过程

Apoc Extended

apoc.cypher.mapParallel

apoc.cypher.mapParallel(fragment, params, list-to-parallelize) yield value - 以批处理方式并行执行片段,并将列表分段分配给 _

过程

已弃用

Apoc Extended

apoc.cypher.mapParallel2

apoc.cypher.mapParallel2(fragment, params, list-to-parallelize) yield value - 以批处理方式并行执行片段,并将列表分段分配给 _

过程

示例:按标签快速统计节点数量

我们可以使用 count 函数快速计算特定标签的节点数量,但前提是查询中仅包含此操作。例如:

MATCH (:Person) RETURN count(*);

我们也可以通过 UNION ALL 将多个查询结合起来

有效
MATCH (:Person) RETURN count(*)
UNION ALL
MATCH (:Movie) RETURN count(*);

但我们不能使用 WITH 子句执行相同的操作

无效
MATCH (:Person)
WITH count(*) as people
MATCH (:Movie) RETURN people, count(*) as movies;

此查询将通过遍历所有节点来计算数量,这是一个非常缓慢的操作

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