gpt4 book ai didi

neo4j - 删除neo4j中重复的节点及其关系

转载 作者:行者123 更新时间:2023-12-02 18:21:55 30 4
gpt4 key购买 nike

密码查询 MATCH (n:BusinessBranch) RETURN n 返回所有节点,我想根据属性 address 删除重复节点及其关系。我怎么做?

最佳答案

[已更新]

  1. 要删除共享相同 address 属性值的所有 BusinessBranch 节点(这还需要删除它们的所有关系):

    MATCH (b:BusinessBranch)
    WITH b.address AS address, COLLECT(b) AS branches
    WHERE SIZE(branches) > 1
    FOREACH (n IN branches | DETACH DELETE n);

    此查询收集具有相同地址的所有 BusinessBranch 节点,筛选具有多个分支的集合,然后对以下位置的所有分支使用 DETACH DELETE生成的集合(这将删除分支及其关系)。

  2. 要删除除一个之外的所有重复节点,您可以执行以下操作:

    MATCH (b:BusinessBranch)
    WITH b.address AS address, COLLECT(b) AS branches
    WHERE SIZE(branches) > 1
    FOREACH (n IN TAIL(branches) | DETACH DELETE n);

    但是,在这种情况下,您应该首先查看 APOC 程序 apoc.refactor.mergeNodes ,这更适合大多数用例。

关于neo4j - 删除neo4j中重复的节点及其关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46882894/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com