在Neo4j中添加与现有节点的关系

时间:2018-03-31 09:26:39

标签: neo4j graph-databases cql

我想在Neo4j中添加新关系到现有节点 使用以下语法:

MATCH (a:User {name: "Jack", surname: "Roe"}),
(b:User {name: "Jack", surname: "Smith"})
CREATE (a) -[r:Knows]-> (b)
RETURN a,r,b

但我收到此警告:enter image description here 它是什么意思,我应该如何修改我的密码查询?

1 个答案:

答案 0 :(得分:3)

在你的情况下,你无事可做。

警告就像它在说明中所解释的那样,是你有一个断开连接的模式:(a:User {name: "Jack", surname: "Roe"})(b:User {name: "Jack", surname: "Smith"})没有链接。

因此,为了创建结果,Neo4j必须计算这两组的所有组合:

  • 节点 a
  • 的节目
  • 节点 b
  • 的节目

所以这是两组之间的笛卡尔积,这可能需要很多次,特别是如果一组具有高基数。

在您的情况下,我假设您有一个节点Roe和另一个Jack,因此笛卡尔积只是1 x 1,所以很容易。