在带有多个MERGE的neo4j中求和2个图

时间:2018-06-30 11:14:23

标签: neo4j cypher

简单:我们如何MERGE多个节点和关系,就像我们对MATCHCREATE的处理方式一样:我们可以进行多个{{ 1}}或CREATE用于节点或关系,以逗号分隔,但是MATCH

不允许执行此操作

详细信息::假设我有两个图表:

MERGE

我在neo4j中插入了G1: (a)-[r1]->(b)<-[r2]-(c) G2: (a)-[r1]->(b)<-[r3]-(d) ,并且G1准备推送到数据库。通常的方法是合并每个节点对,然后合并关系。在此示例中,对于G2关系,由于r1已经具有关系,因此db中不会发生任何变化,但是对于第二个关系,我的CQL首先创建节点G1然后添加关系{{ 1}}

是否可以一步将d推送到数据库?像这样:

r3

创建这样的结果:

G2

1 个答案:

答案 0 :(得分:0)

没有单个MERGE语句。您需要遵循对每个节点进行合并,然后对每个关系进行合并的模式。

也就是说,Neo4j确实使用事务,因此虽然在Cypher查询中将其分解为多个子句,但在提交时会自动应用事务。