2016-08-01 8 views
0

neo4j-community-3.0.0-M05を実行しています。Neo4j CypherクエリのMERGE句が機能しない

私はNeo4J Cypher Query LanguageのMERGE句を試しています。それを作成する前に、最初のデータの有無をチェックMATCH又はCREATEの組み合わせ、のように作用する

を以下のように説明がgivenあります。 MERGEでは、検索または作成するパターンを定義します。通常、MATCHの場合と同様に、コアパターンで検索するキープロパティを含めるだけです。 MERGEは、追加のプロパティを提供することを可能にします。ON CREATE

私はすでに、次のノード持ち

:しかし

MERGE (a:Movie{title:"Forrest Gump"}) 
ON CREATE SET a.addedOn= "20160108" 
RETURN a; 

:私はちょうどMERGE句を試してみることにダミーの値20160108でダミープロパティaddedOnを追加したい今

(:Movie{title:"Forrest Gump", released:1994}) 

をし、これは動作していないようです:

enter image description here

これはなぜですか?

答えて

1

あなたが見ているのは、まさに期待される動作です。

MERGEは既存のForrest Gumpを検出するので、このノードが使用されます。あなたが何も作成していないので、ON CREATEハンドラは起動しません。

ON MATCHハンドラがある場合は、MERGEの試合が成功したため、この人物が解雇されていたはずです。

+0

素晴らしい... "マッチオン": 'マージ(a:ムービー{タイトル:"フォレストガンプ "})マッチセットa.addedOn =" 20160108 "オンCREATE SET a.addedOn =" 20160108 "リターンa; '。これは知らなかった。 – Mahesha999

関連する問題