【发布时间】:2013-03-12 09:14:24
【问题描述】:
对于以下查询:
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 关系。 但是,在执行查询时,只创建了一个关系(Neo-[:FRIEND]->Morpheus)。 再次执行查询并创建另一个关系(Neo-[:FRIEND]->Trinity)
这是为什么呢? (使用 Neo4j 1.8.2)
【问题讨论】: