內容簡介
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 是什麼?開源工作流程自動化平台,自架與 Cloud 怎麼選
- n8n Set 節點教學:新增、改寫與整理資料欄位
- n8n Limit 節點教學:限制輸出筆數,避免 API 超量與費用暴增
- n8n HTTP Request 節點教學:串接第三方 API 與安全保管憑證
- n8n Filter 節點教學:依條件過濾資料
參考連結
成本與風險摘要
- 適用對象與規模:所有需要依條件篩選資料的 n8n 流程。
- 成本(硬體、訂閱、授權):節點本身不另外收費;在 AI 或付費 API 節點前先過濾,可以降低外部服務費用。
- 維護時間:幾乎不需維護;上游資料欄位名稱變更時,記得同步調整條件。
- 資安注意事項:篩選客戶資料時留意個資範圍,只把必要的資料傳到後續節點。
- 常見誤區:型別不符(例如年齡是字串 “19”)導致條件判斷失敗;誤以為可以在同一個節點混用 AND 與 OR。
- 不建議使用的情況:需要同時處理「符合」與「不符合」兩條路徑時,改用 If 節點。
- 測試日期與版本號:資料查核日期:2026-10-28;依官方文件對照 n8n 2.45.5(範例為作者早期實作,本次未重新實機測試)。
