Neo4j建立关系

本文概述

CREATE语句用于创建节点之间的关系。这些关系定义了数据的方向, 类型和形式模式。

它主要定义了三件事:

  • 建立关系
  • 在现有节点之间创建关系
  • 使用标签和属性创建关系

建立关系

创建关系时, 应在方括号” []”中指定关系, 具体取决于关系在连字符”-“和箭头”?”之间的关系方向, 如以下语法所示。

句法:

CREATE (node1)-[:RelationshipType]->(node2)

例子

让我们先创建两个节点” Raul”和” It”, 然后指定它们之间的关系。

CREATE (Raul:player{name: "Raul Vinci", YOB: 1973, POB: "Milan"}) 
CREATE (It:Country {name: "Itly"}) 
RETURN Raul, It
Neo4j建立关系1

现在在这两个节点之间创建一个关系” PLAYER_OF为?

CREATE (Raul)-[r:PLAYER_OF]->(It)
RETURN Raul, It

输出

Neo4j建立关系2

你还可以以表格或文本形式查看它:

Neo4j建立关系3
Neo4j建立关系4

你还可以下载(导出)你要保存的格式的图形。单击下载按钮, 请参见示例:

Neo4j建立关系5

在现有节点之间创建关系

MATCH语句用于在现有节点之间创建关系。

句法:

MATCH (a:LabeofNode1), (b:LabeofNode2) 
WHERE a.name = "nameofnode1" AND b.name = " nameofnode2" 
CREATE (a)-[: Relation]->(b) 
RETURN a, b

例子

使用MATCH语句创建关系。

MATCH (a:player), (b:Country) WHERE a.name = "Raul Vinci" AND b.name = "Itly" 
CREATE (a)-[r: FOOTBALLER_OF]->(b) 
RETURN a, b

输出

Neo4j建立关系6

使用标签和属性创建关系

CREATE语句用于创建带有标签和属性的关系。

句法:

CREATE (node1)-[label:Rel_Type {key1:value1, key2:value2, . . . n}]-> (node2)

例:

让我们举一个例子, 使用CREATE语句为具有标签和属性的节点创建关系。

首先创建一个具有多个标签的节点” Kohli”

CREATE (Kohli:person:player)

然后使用相同的节点创建一些属性:

CREATE (Kohli:player{name: "Virat Kohli", YOB: 1988, POB: "Delhi"}) 
RETURN Kohli
Neo4j建立关系7

创建另一个节点” Ind”:

CREATE (Ind:Country {name: "India"})
Neo4j建立关系8

现在, 创建带有标签和属性的关系:

MATCH (a:player), (b:Country) WHERE a.name = "Virat Kohli" AND b.name = "India" 
CREATE (a)-[r:BATSMAN_OF {Matches:5, Avg:90.75}]->(b)  
RETURN a, b
Neo4j建立关系9

创建一条完整的道路

在Neo4j中, 使用CREATE语句创建路径。使用连续关系形成路径。

句法:

CREATE p = (Node1 {properties})-[:Relationship_Type]->
(Node2 {properties})[:Relationship_Type]->(Node3 {properties}) 
RETURN p

例:

首先创建一个名为” Champions_Trophy”的node3以进行进一步的操作。

Neo4j建立关系10

现在执行以下代码:

CREATE p = (Kohli {name:"Virat Kohli"})-[:TOPSCORRER_OF]->
(Ind {name: "India"})-[: WINNER_OF]->(Node3 {CT: "Champions_Trophy"}) 
RETURN p
Neo4j建立关系11
微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?