n8n 拆分節點(Split Out)(08):把「清單一筆」展平成「多筆可處理」的神器

很多來源(Webhook、API、資料庫)會把一個項目裡塞一個清單:一筆訂單含多個品項、一張客戶卡含多個聯絡方式。拆分節點(Split Out)能把某個欄位中的列表展開,將它逐一拆成多筆 item 往下游節點傳遞,讓你能對每個元素獨立打 API、寫資料庫、做條件判斷或通知。

你只需設定:

  • Field to Split Out:指出哪個欄位是「要拆的清單」
  • Include:要不要把原本 item 的其他欄位一起帶下去(全部/部分/都不要)
  • (選用)Destination Field Name:指定拆出來的元素要放到輸出 item 的哪個欄位名
  • (選用)Include BinaryDisable Dot Notation:控制二進位與欄位路徑解析

常見用法:

  • 訂單→品項逐筆處理:每個品項各自扣庫存/計價
  • 客戶→標籤逐筆處理:逐一同步到行銷系統
  • 批次資料→逐筆驗證:把批次 payload 展開,後續各自比對、補齊、寫表
data splitting visualization with one item containing a list being separated into multiple individual items

拆分節點 (Split Out Node) 介紹

使用拆分節點可以將包含列表的單個數據項分離為多個項。例如,您有一個客戶列表,想要拆分它們,使每個客戶都有一個項。

這對於需要單獨處理列表中每個元素的工作流特別有用,可以將批量數據轉換為可單獨處理的記錄。

拆分節點 (Split Out Node) 參數

要拆分的字段 (Field to Split Out)

輸入包含您想要分離為單個項的列表的字段

如果您使用的是二進制數據輸入,請在表達式中使用 $binary 設置要拆分的字段

包含 (Include)

選擇是否以及如何希望 n8n 將輸入數據中的任何其他字段與每個新的單個項保留在一起:

  • 無其他字段 (No Other Fields)
  • 所有其他字段 (All Other Fields)
  • 選定的其他字段 (Selected Other Fields)
shuffled cards or data items in random order

拆分節點 (Split Out Node) 選項

禁用點表示法 (Disable Dot Notation)

默認情況下,n8n 啟用點表示法以 parent.child 格式引用子字段。使用此選項可禁用點表示法(開啟)或繼續使用點表示法(關閉)

目標字段名稱 (Destination Field Name)

輸入輸出中應放置拆分字段內容的字段

包含二進制 (Include Binary)

選擇是否在新輸出中包含來自輸入的二進制數據(開啟)或不包含(關閉)

這些選項使您能夠精確控制拆分過程和結果數據的結構。

拆分節點 (Split Out Node) 應用場景

客戶數據處理

將客戶列表拆分為單個客戶記錄,以便單獨處理每個客戶

訂單處理

將包含多個商品的訂單拆分為單個商品項,以便單獨處理每個商品

批處理轉換

將批量接收的數據拆分為單個記錄,以便進行詳細處理或分析

拆分節點在需要將批量或聚合數據轉換為單個記錄進行處理的工作流中特別有用。

person successfully completing a complex workflow with data transformation nodes

總結

  • 基本心法
    • 先確認「要拆的字段」確實是陣列;不是陣列時建議先用 IF/Set 正規化。
    • 需要沿用原資料?用 Include: All / Selected;想極簡輸出就選 No Other Fields(效能也更好)。
    • 想固定輸出的欄位名,設 Destination Field Name(例如統一用 item)。
  • 實務細節
    • 欄位名含點號或需原樣比對時,打開 Disable Dot Notation,避免被當作路徑解析。
    • 有大物件或檔案時,Include Binary 只在必要時開啟,避免 payload 暴增。
    • 拆完逐筆處理後,若要再彙整,可用 Merge(Append) 或其他彙整節點把結果收回一條流。
  • 常見坑位
    • 拆前未排序:若後續需要 Top-N/最新 N 筆,請在拆分前先用 Sort + Limit
    • 過度複製欄位:帶太多「其他欄位」會讓每筆 item 變大、影響後續效能;能選 Selected 就別用 All
    • 清單可能為空:空陣列會導致不輸出任何 item,必要時在前面加預檢或在後面處理「無輸出」路徑。

用好 Split Out,你就能把「一包資料」拆成「可獨立行動的粒子」,讓整條工作流程更精細、可控、也更容易維護。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

返回頂端