跳到主要内容

筛选数据

在 n8n 中,“筛选”可以指不同操作,取决于目标。本指南同时介绍界面中的可视化筛选,以及工作流执行期间的数据过滤。

在界面中可视化筛选数据 ​

信息

功能可用范围

以下套餐支持在节点 INPUT(输入) 和 OUTPUT(输出) 面板中筛选数据:

  • n8n Cloud: Pro、Enterprise
  • 自托管: 所有版本

在节点 INPUT(输入) 和 OUTPUT(输出) 面板中搜索、筛选数据,可以检查节点数据并找到特定数据项。

搜索步骤如下:

  1. 在节点的 INPUT(输入) 或 OUTPUT(输出) 面板中,选择 Search(搜索) 搜索图标。
  2. 输入搜索词。

n8n 会在输入时实时筛选,显示包含搜索词的对象或行。

此筛选仅影响显示,不会修改或删除数据。关闭节点并重新打开后,筛选条件会重置。

在工作流执行期间过滤数据 ​

要在工作流中实际移除或筛选数据,可以采用以下方式:

过滤整个数据项 ​

根据条件移除整个数据项时,使用 Filter 节点。它会判断条件,只传递符合要求的数据项。

过滤字段 ​

要保留数据项或对象本身、仅移除特定字段,使用 Edit Fields (Set) 节点,配置为移除不需要的字段。

筛选数组元素 ​

要筛选数据项内部数组的元素,在表达式或 Code 节点中使用 .filter() 方法。例如:

{{ $json.myArray.filter(item => item.value > 10) }}

这样会移除不满足条件的数组元素,同时保留数据项结构。

过滤以往执行中出现过的重复数据项 ​

要移除在工作流之前执行中已经出现过的数据项,使用 Remove Duplicates 节点。事件多次触发、但只希望处理第一次时,可以采用此方式。

相关资源 ​

本文为社区中文翻译。查看对应英文原文