我正在尝试复制节点的所有内部关系(n)
到另一个节点(m)
(两个女巫我都知道id)在删除之前(n)
,但我无法提出代码。这些关系可能存在也可能不存在。
有人摘录吗?
您将无法从关系集合中动态创建关系类型。
假设即使我们收集所有传入关系如下
START n=node(id1) MATCH n<-[r]-() WITH collect(r) as rels ...
您将能够迭代集合rels,但是不会能够做到以下
CREATE (n)-[rels[i]]->(m)
因此,假设所有传入关系都属于同一类型,则说“foo”。然后你可以执行以下操作。
START n=node(id1),m=node(id2)
MATCH n<-[r:foo]-(p)
WITH collect(p) as endNodes,m
FOREACH(i in range(0,length(endNodes)-1) | foreach(a in [endNodes[i]] |
create m<-[:foo]-a
))
如果您的关系类型不同,那么您可以参考此解决方法技术:here。您可以从控制台查询,将所有起始节点、结束节点、关系类型信息以 csv 格式下载到 Excel 表格中。然后运行 cypher 脚本来运行它。
另一种方法是您可以使用 neo4j 的 java api 进行查询,然后存储所有关系和节点,相应地构建您的查询并再次触发。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)