知识库

如何确定 detach delete 会影响多少个节点和关系

在运行 `match …​. detach delete n;` 之前,该语句将查找节点并删除与这些节点关联的所有关系以及删除节点本身,您可能需要运行一个查询来确定将受影响的节点/关系的数量。

例如,在使用 Neo4j Browser 中的 `:play movies` 数据库时,如果运行

match (n:Person) return count(n), sum ( size( (n)-[]->()));

这将报告

image

这表示如果随后运行 `match (n:Person) detach delete n;`,这将影响

133 个节点和 253 个关系,如下图所示

image

在这种情况下,133 个节点和 253 个关系并不是一个显著大的数字。但是,如果查询返回成千上万个将受影响的节点和关系,则应重新考虑方法并遵循题为《Neo4j 大型删除事务最佳实践》的文档。

© . All rights reserved.