これはバグかもしれませんが、リレーションシップのコレクションを削除すると、開始ノードも削除されます。私はneo4jコミュニティ版2.3.3を実行しており、次のクエリを順番に実行しています。 Displaying 3 nodes, 2 relationships.
とDeleted 2 relationships, statement executed in 103 ms.
Neo4j cypher:リレーションシップのコレクションを削除する
になりそして私が見つけていますが代わりにCが削除される関係の集まりである画像
match (u:User)-[]->(p:Pie)-[c:CONSISTS_OF*1]->() where id(u) = 6398 and id(p)= 6436 FOREACH(q in c | DELETE q)
のグラフを返す
match (u:User)-[]->(p:Pie)-[c:CONSISTS_OF*1]->() where id(u) = 6398 and id(p)= 6436 return p,c
は、ノードpもあります(no rows)
私は単純にリレーションシップのコレクションを削除したいと思います。私はまた、この機能が理にかなっているものの、2013年後半から再訪されていないと感じています。https://github.com/neo4j/neo4j/issues/1612
EDIT:以前のバージョンの質問では、DELETEの代わりにDETACH DELETEがありました。これは質問の投稿の間違いでした。私はそれ以来それを改訂しました。このシナリオでは、DETACH DELETEとDELETEの両方が同じように動作するため、これがバグかもしれないと考えられる理由に注意してください。
'(p:Pie)'が削除されたことをどう知っていますか?確認するために使用する 'MATCH'クエリでは、パターンの' - [c:CONSISTS_OF * 1] - > 'をまだ含めてください。それらの関係を削除したため、その部分は何も一致しません。しかし、全体のパターンはいずれにも一致しません。 'MATCH(p:Pie)WHERE id(p)= 6436'はあなたに何を与えますか? – jjaderberg
うわー、まったくそれを見過ごした。あなたは絶対に正しいです。答えとしてあなたのことを公開したいのであれば、私はこの質問を閉じるでしょう。私はそれを見落として幾分恥ずかしいです。 –