Neo4j - FOREACH 語句



FOREACH 語句用於更新列表中的資料,無論是路徑的組成部分,還是聚合的結果。

語法

以下是 FOREACH 語句的語法。

MATCH p = (start node)-[*]->(end node) 
WHERE start.node = "node_name" AND end.node = "node_name" 
FOREACH (n IN nodes(p)| SET n.marked = TRUE) 

示例

在繼續示例之前,請在 Neo4j 資料庫中建立一個名為 p 的路徑,如下所示。

CREATE p = (Dhawan {name:"Shikar Dhawan"})-[:TOPSCORRER_OF]->(Ind{name: 
   "India"})-[:WINNER_OF]->(CT2013{name: "Champions Trophy 2013"}) 
RETURN p 

以下是一個示例 Cypher 查詢,它使用 FOREACH 語句向路徑上的所有節點新增一個屬性。

MATCH p = (Dhawan)-[*]->(CT2013) 
   WHERE Dhawan.name = "Shikar Dhawan" AND CT2013.name = "Champions Trophy 2013" 
FOREACH (n IN nodes(p)| SET n.marked = TRUE)

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

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

Browser App

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

For each

結果

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

Set Properties

驗證

要驗證節點的建立,請在美元提示符中鍵入並執行以下查詢。

MATCH (n) RETURN n 

此查詢返回資料庫中的所有節點(我們將在接下來的章節中詳細討論此查詢)。

執行後,此查詢將顯示已建立的節點,如下圖所示。

Created Result
廣告