
- Neo4j CQL
- Neo4j CQL - 簡介
- Neo4j CQL - 建立節點
- Neo4j CQL - 建立關係
- Neo4j CQL 寫入語句
- Neo4j - MERGE 命令
- Neo4j - SET 語句
- Neo4j - DELETE 語句
- Neo4j - REMOVE 語句
- Neo4j - FOREACH 語句
- Neo4j CQL 通用語句
- Neo4j - RETURN 語句
- Neo4j - ORDER BY 語句
- Neo4j - LIMIT 語句
- Neo4j - SKIP 語句
- Neo4j - WITH 語句
- Neo4j - UNWIND 語句
- Neo4j CQL 函式
- Neo4j - 字串函式
- Neo4j - 聚合函式
- Neo4j CQL 管理
- Neo4j - 備份與恢復
- Neo4j - 索引
- Neo4j - 建立唯一約束
- Neo4j - 刪除唯一約束
- Neo4j 有用資源
- Neo4j - 快速指南
- Neo4j - 有用資源
- Neo4j - 討論
Neo4j - SET 語句
使用 SET 語句,您可以為現有的節點或關係新增新的屬性,還可以新增或更新現有的屬性值。
在本章中,我們將討論如何:
- 設定屬性
- 刪除屬性
- 設定多個屬性
- 為節點設定標籤
- 為節點設定多個標籤
設定屬性
使用 SET 語句,您可以在節點中建立一個新的屬性。
語法
以下是設定屬性的語法。
MATCH (node:label{properties . . . . . . . . . . . . . . }) SET node.property = value RETURN node
示例
在繼續示例之前,請先建立一個名為 Dhawan 的節點,如下所示。
CREATE (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"})
以下是一個示例 Cypher 查詢,用於建立一個名為“highestscore”、值為“187”的屬性。
MATCH (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"}) SET Dhawan.highestscore = 187 RETURN Dhawan
要執行上述查詢,請執行以下步驟:
步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

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

結果
執行後,您將獲得以下結果。在這裡您可以觀察到,在名為“Dhawan”的節點中建立了一個鍵值對為 highestscore/187 的屬性。

刪除屬性
您可以透過將NULL作為值傳遞給它來刪除現有屬性。
語法
以下是使用 SET 語句從節點中刪除屬性的語法。
MATCH (node:label {properties}) SET node.property = NULL RETURN node
示例
在繼續示例之前,請先建立一個名為“jadeja”的節點,如下所示。
Create (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"})
以下是一個示例 Cypher 查詢,它使用 SET 語句刪除此節點中名為 POB 的屬性,如下所示。
MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"}) SET Jadeja.POB = NULL RETURN Jadeja
要執行上述查詢,請執行以下步驟:
步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

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

結果
執行後,您將獲得以下結果。在這裡您可以觀察到,名為POB的變數已被刪除。

設定多個屬性
同樣,您可以使用 Set 語句在節點中建立多個屬性。為此,您需要使用逗號指定這些鍵值對。
語法
以下是使用 SET 語句在節點中建立多個屬性的語法。
MATCH (node:label {properties}) SET node.property1 = value, node.property2 = value RETURN node
示例
以下是一個示例 Cypher 查詢,它使用 Neo4j 中的 SET 語句在節點中建立多個屬性。
MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988}) SET Jadeja.POB: "NavagamGhed", Jadeja.HS = "90" RETURN Jadeja
要執行上述查詢,請執行以下步驟:
步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

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

結果
執行後,您將獲得以下結果。在這裡您可以觀察到,名為 POB 和 HS 的屬性已被建立。

為節點設定標籤
您可以使用 SET 語句為現有節點設定標籤。
語法
以下是為現有節點設定標籤的語法。
MATCH (n {properties . . . . . . . }) SET n :label RETURN n
示例
在繼續示例之前,請先建立一個名為“Anderson”的節點,如下所示。
CREATE (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"})
以下是一個示例 Cypher 查詢,用於使用 SET 語句為節點設定標籤。此查詢將標籤“player”新增到節點 Anderson 並返回它。
MATCH (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"}) SET Anderson: player RETURN Anderson
要執行上述查詢,請執行以下步驟:
步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

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

結果
執行後,您將獲得以下結果。在這裡您可以觀察到,名為“player”的標籤已新增到節點中。

為節點設定多個標籤
您可以使用 SET 語句為現有節點設定多個標籤。在這裡,您需要使用冒號“:”分隔標籤。
語法
以下是使用 SET 語句為現有節點設定多個標籤的語法。
MATCH (n {properties . . . . . . . }) SET n :label1:label2 RETURN n
示例
在繼續示例之前,請先建立一個名為“Ishant”的節點,如下所示。
CREATE (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"})
以下是一個示例 Cypher 查詢,用於使用 SET 語句在節點上建立多個標籤。
MATCH (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) SET Ishant: player:person RETURN Ishant
要執行上述查詢,請執行以下步驟:
步驟 1 - 開啟 Neo4j 桌面應用程式並啟動 Neo4j 伺服器。使用 URL https://:7474/ 開啟 Neo4j 的內建瀏覽器應用程式,如下面的螢幕截圖所示。

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

結果
執行後,您將獲得以下結果。在這裡您可以觀察到,兩個標籤 - person 和 player - 已新增到名為Ishant的節點中。
