unwind的用法(UNWIND 是一個強大的操作符,用于將集合(列表、數組)展開為多行數據。它類似于關系型數據庫中的 UNNEST 或 LATERAL JOIN,是 Cypher 查詢中處理集合數據的核心工具)
(1)基本語法
UNWIND <collection> AS <variable>
核心功能:
將集合(如列表、數組)展開為多行,每行包含集合中的一個元素。
常見場景:
批量數據處理
集合元素與圖節點關聯
復雜數據結構扁平化
(2)展開簡單列表
WITH [1, 2, 3, 4] AS numbers
UNWIND numbers AS num
RETURN num // 返回四行:1, 2, 3, 4
(3)結合 Merge 創建關系
Merge (m:Movie {title: "流浪地球2"})
WITH m, ["吳京", "李雪健", "沙溢"] AS actorsUNWIND actors AS actorName
MERGE (a:Actor {name: actorName})
MERGE (a)-[:ACTED_IN]->(m)