假设你有一个像这样的节点
MERGE (n1:Label1:Label2 { name:"name1" })
现在,我希望能够使用MERGE子句创建以下新节点:
MERGE
MERGE (n2:Label1 { name:"name1" })
但是由于n2是n1的“子集”Neo4j 不会创建新节点。所以,我的问题是:有没有一种方法可以使用MERGE来匹配/创建一个具有指定标签的确切数量的节点,而不使用CREATE子句?
n2
n1
CREATE
kninwzqo1#
您可以使用OPTIONAL MATCH和CREATE的组合来实现所需的行为:
OPTIONAL MATCH
OPTIONAL MATCH (n2:Label1 {name: "name1"}) WHERE NOT (n2:Label2) WITH n2 WHERE n2 IS NULL CREATE (n3:Label1 {name: "name1"})
1条答案
按热度按时间kninwzqo1#
您可以使用
OPTIONAL MATCH
和CREATE
的组合来实现所需的行为: