次のクエリの場合:
START n=node(1)
MATCH (n)-[:KNOWS]->(k), (n)-[:LOVES]->(l)
WITH collect(k) + collect(l) as friends, n
FOREACH(f in friends : create unique (n)-[:FRIEND]->(f))
(データは console.neo4j.org のとおりです) 私は友人が Morpheus と Trinity であることを期待しているので、Neo から Morpheus および Neo から Trinity に新しい FRIEND 関係が作成されます。ただし、クエリを実行すると、作成されるリレーションは 1 つだけです (Neo-[:FRIEND]->Morpheus)。クエリを再度実行すると、別のリレーションが作成されます (Neo-[:FRIEND]->Trinity)
何故ですか?(Neo4j 1.8.2 を使用)