n8n Filter 節點封面圖:在自動化流程中過濾資料

n8n Filter 節點教學:依條件過濾資料

內容簡介

Filter 節點是 n8n 中用於篩選資料的簡單工具。它會逐筆檢查資料是否符合您設定的條件:符合的資料繼續傳給下一個節點,不符合的則從輸出中移除。

本教學將示範一個簡單情境,幫助您快速上手。

範例場景

您有一份包含客戶年齡的資料清單,想篩選出年齡超過 18 歲的客戶進行後續聯繫。

Workflow 範例

範例說明

此 workflow 的操作步驟:

  • When clicking ‘Test workflow’:手動觸發節點,範例以固定資料(Alice 25 歲、Bob 17 歲、Charlie 19 歲)模擬輸入。
  • Filter Age > 18:條件設定為 Number 型別的「is greater than」,比較 {{ $json.age }} 是否大於 18。

執行前、後差異

執行前:所有客戶的資料(包括年齡小於18歲的)都傳遞至後續流程。

[
  {
    "name": "Alice",
    "age": 25
  },
  {
    "name": "Bob",
    "age": 17
  },
  {
    "name": "Charlie",
    "age": 19
  }
]

執行後:僅年齡超過18歲的客戶資料被傳遞,提升聯繫效率並避免不相關操作。

[
  {
    "name": "Alice",
    "age": 25
  },
  {
    "name": "Charlie",
    "age": 19
  }
]

執行後:被過濾掉的內容如下。

[
  {
    "name": "Bob",
    "age": 17
  }
]

條件設定重點

  • 依資料型別選擇比較方式:String、Number、Date & Time、Boolean、Array、Object 各有不同的比較運算,例如字串的 contains、matches regex,日期的 is after、is before。
  • 多個條件:可用 AND(全部符合)或 OR(任一符合)組合,但同一個 Filter 節點不能混用 AND 與 OR;需要混合邏輯時可以串接多個 Filter 節點。
  • 型別錯誤:遇到「wrong type」錯誤時,可在選項中開啟 Less Strict Type Validation,讓 n8n 嘗試自動轉換型別。
  • 大小寫:比對字串時可用 Ignore Case 選項決定是否忽略大小寫。

小技巧

  • 條件可以根據需要更改,例如「小於」或「等於」。
  • 執行後在節點的輸出面板檢查資料,確保篩選邏輯正確。
  • 為節點命名時加上具描述性的名稱(例如「Filter Age > 18」),方便後續管理。
  • 需要把「符合」與「不符合」的資料分別送往不同流程時,改用 If 節點會更直覺。

搭配 AI Agent 使用

在 AI 流程中,Filter 節點適合放在 AI Agent 之前,先剔除不需要處理的資料(例如已處理過、內容為空的記錄),減少呼叫模型的次數與費用;也可以放在 AI 之後,只讓分類結果符合條件的資料進入下一步,例如只把被判斷為「客訴」的訊息轉給客服。

n8n 系列文章

參考連結

成本與風險摘要

  • 適用對象與規模:所有需要依條件篩選資料的 n8n 流程。
  • 成本(硬體、訂閱、授權):節點本身不另外收費;在 AI 或付費 API 節點前先過濾,可以降低外部服務費用。
  • 維護時間:幾乎不需維護;上游資料欄位名稱變更時,記得同步調整條件。
  • 資安注意事項:篩選客戶資料時留意個資範圍,只把必要的資料傳到後續節點。
  • 常見誤區:型別不符(例如年齡是字串 “19”)導致條件判斷失敗;誤以為可以在同一個節點混用 AND 與 OR。
  • 不建議使用的情況:需要同時處理「符合」與「不符合」兩條路徑時,改用 If 節點。
  • 測試日期與版本號:資料查核日期:2026-10-28;依官方文件對照 n8n 2.45.5(範例為作者早期實作,本次未重新實機測試)。
返回頂端