apoc.nodes.delete

此过程已弃用。请改用 Cypher 的 CALL 事务子查询

详细信息

语法

apoc.nodes.delete(nodes, batchSize) :: (value)

描述

删除所有具有给定 ID 的 NODE 值。

输入参数

名称

类型

描述

节点

ANY

要删除的节点。节点类型可以是 STRING (elementId()), INTEGER (id()), NODE,或 LIST<STRING | INTEGER | NODE>

batchSize

INTEGER(整数)

单次批处理中要删除的节点数量。

返回参数

名称

类型

描述

INTEGER(整数)

已删除节点的数量。

在 APOC 2025.07 版本发布之前,此过程在本地实例上受到限制。若要在旧版本上使用它,必须解除限制。有关详细信息,请参阅 安装 → 加载和解除限制

用法示例

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

CREATE (:Student {name: 'Alice', score: 71});
CREATE (:Student {name: 'Mark', score: 95});
CREATE (:Student {name: 'Andrea', score: 86});

以下示例展示了如何使用 Cypher 和 APOC 在不同的事务批次中删除节点

apoc.nodes.delete
MATCH (n:Student)
WITH collect(n) AS nodes
CALL apoc.nodes.delete(nodes, 2)
YIELD value
RETURN value
Cypher 的 CALL {…​} IN TRANSACTIONS
MATCH (n:Student)
CALL (n) {
    DETACH DELETE n
} IN TRANSACTIONS OF 2 ROWS
RETURN count(n) AS value
结果

3