APOC 节点一对多关系的创建
发布于 6 年前 作者 aqzwy 4116 次浏览 来自 分享

batch 格式: [{from: yourIDInNeo4j, to: [yourIDInNeo4j-1,yourIDInNeo4j-2], properties: {key:vaule}, type: relName}] from和to的值是你在Neo4j能够唯一标识该节点的属性值,properties中以json格式存放想要增添到关系relName中的属性信息 我是在Neo4j Brower中利用apoc进行的多节点关系创建,我是参考了官网的APOC: image.png

语句为UNWIND {batch} as row MATCH (from:Company) WHERE from.uuid = row.from MATCH (to:Company) where to.uuid in row.to CALL apoc.create.relationship(from,row.type,row.properties,to) yield rel RETURN count(*) *这里对于键值key(from,to…)不要加单引号或双引号,否则会报错,运行结果如下: 运行前 image.png 运行后 image.png

3 回复

Tags: 动态创建关系 UNWIND APOC 唯一要注意的一点是 where to.uuid in row.to 不是效率很高的操作。

@graphway 有没有更好的方法 进行一对多的关系创建,效率也不是很低的;还有对于节点和关系的去重操作除了merge以外还有没有好的方法

回到顶部