ノードが2つありますPerson
ノードがあります。neo4j - MERGEが重複するノードを作成します
(p:Person {Name: 'Anthony'})
(p:Person {Name: 'Jason'})
必須の関係は次のとおりです。
(p:Person)-[KNOWS]-(s:Skill) //s is dynamically entered
これを達成するために、私は、クエリを使用:
MATCH (p:Person)
WHERE p.Name='Anthony'
MERGE(p)-[r:KNOWS{Weight:83}]-(x:Skill {Name:"WordPress"})
しかし、私は再びそれをしようとした場合:
MATCH (p:Person)
WHERE p.Name='Jason'
MERGE(p)-[r:KNOWS{Weight:80}]-(x:Skill {Name:"WordPress"})
ノード(s:Skill {Name: 'WordPress'})
が作成された,。
私はMERGEがパターン全体と一致しますが、どのように私はそれが存在しない場合は、このクエリは唯一Skill
ノードを作成することを保証できることを理解できますか?面白いブログ記事へ
これは面白いです!私は、同じクエリでMERGEを2回実行できるとは考えていませんでした。答えをありがとう! – Arjun