Neo4j CQL – 创建关系
Neo4j CQL – 创建关系
在 Noe4j 中,关系是一个元素,我们使用它来连接图的两个节点。这些关系具有数据的方向、类型和形式模式。本章教你如何 –
- 建立关系
- 在现有节点之间创建关系
- 创建与标签和属性的关系
建立关系
我们可以使用 CREATE 子句创建关系。我们将根据它在连字符“-”和箭头“→”之间放置的关系的方向指定方括号“[]”内的关系,如下面的语法所示。
句法
以下是使用 CREATE 子句创建关系的语法。
CREATE (node1)-[:RelationshipType]->(node2)
例子
首先在数据库中创建两个节点Ind和Dhawan,如下图。
CREATE (Dhawan:player{name: "Shikar Dhawan", YOB: 1985, POB: "Delhi"}) CREATE (Ind:Country {name: "India"})
现在,在这两个节点之间创建一个名为BATSMAN_OF的关系作为 –
CREATE (Dhawan)-[r:BATSMAN_OF]->(Ind)
最后,返回两个节点以查看创建的关系。
RETURN Dhawan, Ind
在美元提示中复制并粘贴所需的查询,然后按下以下屏幕截图中突出显示的播放按钮(以执行查询)。
结果
执行时,您将得到以下结果。
在现有节点之间创建关系
您还可以使用MATCH子句在现有节点之间创建关系。
句法
以下是使用 MATCH 子句创建关系的语法。
MATCH (a:LabeofNode1), (b:LabeofNode2) WHERE a.name = "nameofnode1" AND b.name = " nameofnode2" CREATE (a)-[: Relation]->(b) RETURN a,b
例子
以下是使用 match 子句创建关系的示例 Cypher 查询。
MATCH (a:player), (b:Country) WHERE a.name = "Shikar Dhawan" AND b.name = "India" CREATE (a)-[r: BATSMAN_OF]->(b) RETURN a,b
要执行上述查询,请执行以下步骤。
步骤 1 – 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL http://localhost:7474/打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 – 将所需的查询复制并粘贴到美元提示中,然后按下以下屏幕截图中突出显示的播放按钮(以执行查询)。
结果
执行时,您将得到以下结果。
创建与标签和属性的关系
您可以使用 CREATE 子句创建与标签和属性的关系。
句法
以下是使用 CREATE 子句创建与标签和属性的关系的语法。
CREATE (node1)-[label:Rel_Type {key1:value1, key2:value2, . . . n}]-> (node2)
例子
以下是创建与标签和属性的关系的示例 Cypher 查询。
MATCH (a:player), (b:Country) WHERE a.name = "Shikar Dhawan" AND b.name = "India" CREATE (a)-[r:BATSMAN_OF {Matches:5, Avg:90.75}]->(b) RETURN a,b
要执行上述查询,请执行以下步骤 –
步骤 1 – 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL http://localhost:7474/打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 – 将所需的查询复制并粘贴到美元提示中,然后按下以下屏幕截图中突出显示的播放按钮(以执行查询)。
结果
执行时,您将得到以下结果。
创建完整路径
在 Neo4j 中,路径是使用连续关系形成的。可以使用 create 子句创建路径。
句法
以下是使用 CREATE 子句在 Neo4j 中创建路径的语法。
CREATE p = (Node1 {properties})-[:Relationship_Type]-> (Node2 {properties})[:Relationship_Type]->(Node3 {properties}) RETURN p
例子
要执行上述查询,请执行以下步骤 –
步骤 1 – 打开 Neo4j 桌面应用程序并启动 Neo4j 服务器。使用 URL http://localhost:7474/打开 Neo4j 的内置浏览器应用程序,如下面的屏幕截图所示。
步骤 2 – 将所需的查询复制并粘贴到美元提示中,然后按下以下屏幕截图中突出显示的播放按钮(以执行查询)。
结果
执行时,您将得到以下结果。