删除重复节点
使用“删除重复项”节点来识别和删除以下项目:
- 在单次执行中,所有字段或部分字段均相同
- 与之前执行的项目相同或超越
这在可能出现重复数据的情况下非常有用,例如用户创建多个帐户,或客户多次提交同一份订单。处理大型数据集时,发现并删除这些项目会变得更加困难。
通过与先前执行的数据进行比较,“移除重复项”节点可以删除先前执行中出现的项目。它还可以确保新项目的日期比先前执行的日期更晚或值更高。
操作模式
删除重复节点的工作方式根据
操作参数的值而不同:- 删除当前输入中重复的项目:识别并删除当前输入中所有字段或字段子集中的重复项目。
- 删除以前执行中处理过的项目:将当前输入中的项目与以前执行中的项目进行比较,并删除重复项。
- 清除重复数据删除历史记录:擦除以前执行过的项目的内存。
删除当前输入中重复的项目
当您将“操作”字段设置为“
删除当前输入中重复的项目”时,“删除重复项”节点会识别并删除当前输入中的重复项。它可以在所有字段中执行此操作,也可以在部分字段中执行此操作。删除当前输入参数中重复的项目
使用“
删除当前输入中重复的项目”操作时,以下参数可用:- 比较:选择 n8n 应比较输入数据的哪些字段以检查它们是否相同。以下选项可用:
- 所有字段
- :比较输入数据的所有字段。
- 所有字段除外
- :输入 n8n 应从比较中排除的输入数据字段。您可以提供多个值,用逗号分隔。
- 选定字段
- :输入 n8n 应在比较中包含的输入数据字段。您可以提供多个值,用逗号分隔。
删除当前输入中重复的项目选项
如果选择
“除所有字段或选定字段之外”作为比较类型,则可以添加以下选项:- 禁用点符号:设置是否使用点符号引用格式中的子字段(关闭)或不使用(打开)。
- 删除其他字段:设置是否删除比较中未使用的任何字段(打开)或不删除(关闭)。
删除先前执行中处理的项目
当您将“操作”字段设置为“
删除以前执行中处理的项目”时,“删除重复项”节点会将当前输入中的项目与以前执行中的项目进行比较。删除先前执行中处理的项目参数
使用“
删除上次执行中处理的项目”操作时,可以使用以下参数:- 值为新值
- :如果项目的值与之前执行的项目匹配,n8n 会将其删除。
- 值高于任何先前值
- :如果当前值不高于先前值,n8n 会将其删除。
- 值晚于任何先前日期
- :如果当前日期不晚于先前日期,n8n 会将其删除。
- 使用
- “值为新值”
- ,此字段必须为具有唯一 ID 的输入字段或字段组合。
- 使用
- “值高于任何先前值”
- ,此字段必须为具有增量值的输入字段或字段组合。
- 使用
- “值晚于任何先前日期”
- ,此字段必须为具有 ISO 格式日期值的输入字段。
删除先前执行中处理的项目选项
使用“
删除上次执行中处理的项目”操作时,可以使用以下选项:- 范围:设置 n8n 如何存储和使用重复数据进行比较。可用选项如下:
- 节点
- :(默认)将此节点的数据与工作流中的其他“删除重复项”实例分开存储。使用此范围时,您可以
- 而不会影响其他节点。
- 工作流
- :将重复数据存储在工作流级别。这会与设置为使用“工作流”范围的任何其他“删除重复项”节点共享重复数据。n8n 仍将独立管理设置为“节点”范围的其他“删除重复项”节点的重复数据。
当您选择
“值为新”作为“保留项目的位置”选择时,此选项也可用:- 历史记录大小:n8n 为跟踪执行过程中的重复项而存储的项目数。 “范围”选项的值决定了此历史记录大小是特定于此单个“删除重复”节点实例,还是与工作流中的其他实例共享。默认情况下,n8n 存储 10,000 个项目。
清除重复数据删除历史记录
当您将“操作”字段设置为
“清除重复数据删除历史记录”时,“删除重复项”节点会管理并清除先前执行中存储的项目。此操作不会影响当前输入中的任何项目。相反,它会管理“删除先前执行中处理的项目”操作所使用的项目数据库。清除重复数据删除历史记录参数
使用
清除重复数据删除历史记录操作时,以下参数可用:- 模式:您希望如何管理数据库中存储的键/值项。以下选项可用:
- 清理数据库
- :删除数据库中存储的所有重复数据。这会将重复数据库重置为原始状态。
清除重复数据删除历史记录选项
使用
清除重复数据删除历史记录操作时,可以使用以下选项:- 范围:设置 n8n 管理重复数据库时使用的范围。
- 节点
- :(默认)管理特定于此“删除重复”节点实例的重复数据库。
- 工作流
- :管理所有使用工作流范围的“删除重复”节点实例共享的重复数据库。
模板和示例
有关使用“删除重复项”节点的模板及其使用方法的示例,请参阅
模板和示例。相关资源
了解有关n8n 工作流中的
数据结构和数据流的更多信息。