以下のクエリを実行し、すべての関係を削除しました
START n=node:search('username:donna')
MATCH n-[rel18?:STATUS]->(n18)-[rel19?:NEXT*1..]->(n19)
WITH n, rel18, n18, rel19, n19
FOREACH(rel IN rel19: DELETE rel)
DELETE n19, n18, rel18;
結果: 6 つのリレーションと 6 つのノードが削除されました。
同じクエリを再度実行しようとすると、不明な識別子というエラーが表示されますrel19
実際、以下のクエリでも同じエラー Unknown identifier が発生しますrel19
START n=node:search('username:donna')
MATCH n-[rel18?:STATUS]->(n18)-[rel19?:NEXT*1..]->(n19)
RETURN n.username, rel18, n18, rel19, n19;
私のドメイン モデルは、この例と同じ http://docs.neo4j.org/chunked/milestone/cypher-cookbook-newsfeed.htmlです。
同じために削除を実装しようとしています。
また、上記の削除クエリ (最初のクエリ) は、WITH 句を使用して追加されたより大きなクエリの一部になります。そのため、特定のユーザーが STATUS および NEXT 関係を持っていなくても、クエリ全体が正常に実行される場合があります。すべての場合にクエリが正常に実行されるように、クエリを変更してください。
ありがとう、パヴァン