首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RedisGraph:合并节点并移动所有关系?

RedisGraph:合并节点并移动所有关系?
EN

Stack Overflow用户
提问于 2020-08-31 02:39:46
回答 1查看 138关注 0票数 1

在RedisGraph中使用Cypher/python有没有一种方法

是否合并两个节点并将所有关系从旧节点移动到新节点?

我怀疑没有纯粹的Cypher解决方案。在这种情况下,什么是等价的原子操作,以及如何组合它们以实现合并节点+rel

neo4j有apoc.refactor.mergeNodes(节点,选项),apoc.refactor.mergeRelationships(关系,选项),但这对我没有帮助!:(因为我使用的是RedisGraph。

问题是,在RG中,我没有更低级别的访问权限来进行枚举/迭代,从而以编程方式完成这项工作!!

这在一个方向上起作用了,我必须反向<-秒地应用->。

代码语言:javascript
复制
    MATCH (old)-[r:q]->(from_to)
    WHERE old.val = $old
    MATCH (new) WHERE new.val = $new
    MERGE (new)-[nr2:q]->(from_to)
    SET nr2.val = r.val
    DELETE r

有没有办法将它组合到单个查询中?

EN

回答 1

Stack Overflow用户

发布于 2020-09-02 02:08:28

我认为这可以在纯Cypher中完成:

代码语言:javascript
复制
MATCH (old {val: 'old'})-[e:E]->(old_to)
MERGE (new {val: 'new'})
CREATE (new)-[e2:E]->(old_to)
SET e2.prop1 = e.prop1, [...]
DELETE e

这里的主要问题是,必须显式设置所有边缘属性(以及节点属性,如果这些属性也要迁移的话),因为RedisGraph当前不支持设置属性映射。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63660923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档