我试图建立一个数据库,每当一个节点不存在时,它将创建一个新的并在此节点和另一个节点之间建立关系.如果节点存在,则两个节点都会建立关系.
我的问题是,如果我尝试连接2个现有节点,将重新创建第二个节点.我尝试使用MERGE和CREATE UNIQUE,两者都没有用.
我的例子:
CREATE (test1 name:'1'})
MATCH (n)
WHERE n.name = '1'
MERGE (n)-[:know {r:'123'}]->(test3 {name:'3'})
MATCH (n)
WHERE n.name = '1'
MERGE (n)-[:know {r:'123'}]->(test2 {name:'2'})
Run Code Online (Sandbox Code Playgroud)
到这里它的工作原理,但:
MATCH (n)
WHERE n.name = '3'
MERGE (n)-[:know {r:'123'}]->(test2 {name:'2'})
Run Code Online (Sandbox Code Playgroud)
它创建一个新节点"2"而不是连接到存在的节点.