Neo4j CQL - 建立關係



在 Neo4j 中,關係是一種元素,我們用它來連線圖中的兩個節點。這些關係具有方向、型別和資料模式。本章教你如何 -

  • 建立關係
  • 在現有節點之間建立關係
  • 建立帶標籤和屬性的關係

建立關係

我們可以使用 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 

Browser App

複製並貼上所需的查詢到美元提示符中,然後按如下螢幕截圖中突出顯示的播放按鈕(以執行查詢)。

Highlighted Query

結果

執行後,您將獲得以下結果。

Executing

在現有節點之間建立關係

您還可以使用 MATCH 子句在現有節點之間建立關係。

語法

以下是使用 MATCH 子句建立關係的語法。

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

示例

以下是一個使用匹配子句建立關係的 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 https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

Browser App

步驟 2 - 複製並貼上所需的查詢到美元提示符中,然後按如下螢幕截圖中突出顯示的播放按鈕(以執行查詢)。

Existing Node

結果

執行後,您將獲得以下結果。

Executing

建立帶標籤和屬性的關係

您可以使用 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 https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

Browser App

步驟 2 - 複製並貼上所需的查詢到美元提示符中,然後按如下螢幕截圖中突出顯示的播放按鈕(以執行查詢)。

Label Property

結果

執行後,您將獲得以下結果。

Executing

建立完整路徑

在 Neo4j 中,路徑是由連續的關係形成的。可以使用 create 子句建立路徑。

語法

以下是使用 CREATE 子句在 Neo4j 中建立路徑的語法。

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

示例

要執行上述查詢,請執行以下步驟 -

步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

Browser App

步驟 2 - 複製並貼上所需的查詢到美元提示符中,然後按如下螢幕截圖中突出顯示的播放按鈕(以執行查詢)。

Champions Trophy

結果

執行後,您將獲得以下結果。

Result
廣告