Remove Duplicates 去重节点#
使用 Remove Duplicates 去重节点来识别和删除以下项目:
- 在单次执行中跨所有字段或字段子集相同的项目
- 与先前执行中看到的项目相同或被超越的项目
这在可能出现重复数据的情况下很有帮助,例如用户创建多个账户,或客户多次提交同一订单。在处理大型数据集时,发现和删除这些项目变得更加困难。
通过与先前执行的数据进行比较,Remove Duplicates 去重节点可以删除在早期执行中看到的项目。它还可以确保新项目的日期比以前的值更晚或值更高。
Major changes in 1.64.0 1.64.0版本的重大变更
n8n 团队在 n8n 1.64.0 中彻底重新设计了这个节点。本文档反映了节点的最新版本。如果您使用的是旧版本的 n8n,您可以在这里找到本文档的以前版本。
Operation modes 操作模式#
去重节点的工作方式不同,取决于 operation 操作 参数的值:
- Remove Items Repeated Within Current Input 删除当前输入中重复的项目:识别并删除当前输入中跨所有字段或字段子集的重复项目。
- Remove Items Processed in Previous Executions 删除先前执行中处理的项目:将当前输入中的项目与先前执行的项目进行比较并删除重复项。
- Clear Deduplication History 清除去重历史:清除先前执行中项目的内存。
Remove Items Repeated Within Current Input 删除当前输入中重复的项目#
当您将"Operations 操作"字段设置为 Remove Items Repeated Within Current Input 删除当前输入中重复的项目 时,Remove Duplicate 去重节点识别并删除当前输入中的重复项目。它可以跨所有字段或字段子集执行此操作。
Remove Items Repeated Within Current Input parameters 删除当前输入中重复的项目参数#
使用 Remove Items Repeated Within Current Input 删除当前输入中重复的项目 操作时,以下参数可用:
- Compare 比较:选择 n8n 应比较输入数据的哪些字段以检查它们是否相同。以下选项可用:
- All Fields 所有字段:比较输入数据的所有字段。
- All Fields Except 除了所有字段:输入 n8n 应从比较中排除的输入数据字段。您可以提供用逗号分隔的多个值。
- Selected Fields 选定字段:输入 n8n 应包含在比较中的输入数据字段。您可以提供用逗号分隔的多个值。
Remove Items Repeated Within Current Input options 删除当前输入中重复的项目选项#
如果您选择 All Fields Except 除了所有字段 或 Selected Fields 选定字段 作为比较类型,您可以添加这些选项:
- Disable Dot Notation 禁用点符号:设置是否使用点符号以
parent.child
格式引用子字段(关闭)或不使用(开启)。 - Remove Other Fields 删除其他字段:设置是否删除比较中未使用的任何字段(开启)或不删除(关闭)。
Remove Items Processed in Previous Executions 删除先前执行中处理的项目#
当您将"Operation 操作"字段设置为 Remove Items Processed in Previous Executions 删除先前执行中处理的项目 时,Remove Duplicate 去重节点将当前输入中的项目与先前执行的项目进行比较。
Remove Items Processed in Previous Executions parameters 删除先前执行中处理的项目参数#
使用 Remove Items Processed in Previous Executions 删除先前执行中处理的项目 操作时,以下参数可用:
-
Keep Items Where 保留项目条件:选择 n8n 如何决定保留哪些项目。以下选项可用:
- Value Is New 值是新的:如果项目的值与早期执行的项目匹配,n8n 会删除项目。
- Value Is Higher than Any Previous Value 值高于任何先前值:如果当前值不高于先前值,n8n 会删除项目。
- Value Is a Date Later than Any Previous Date 值是晚于任何先前日期的日期:如果当前日期不晚于先前日期,n8n 会删除日期项目。
-
Value to Dedupe On 去重依据值:要比较的输入字段或字段。您为 Keep Items Where 保留项目条件 参数选择的选项决定您需要的确切格式:
- 使用 Value Is New 值是新的 时,这必须是具有唯一 ID 的输入字段或字段组合。
- 使用 Value Is Higher than Any Previous Value 值高于任何先前值 时,这必须是具有增量值的输入字段或字段组合。
- 使用 Value Is a Date Later than Any Previous Date 值是晚于任何先前日期的日期 时,这必须是具有 ISO 格式日期值的输入字段。
Remove Items Processed in Previous Executions options 删除先前执行中处理的项目选项#
使用 Remove Items Processed in Previous Executions 删除先前执行中处理的项目 操作时,以下选项可用:
- Scope 范围:设置 n8n 如何存储和使用去重数据进行比较。以下选项可用:
- Node 节点:(默认)独立于工作流中其他 Remove Duplicates 去重实例存储此节点的数据。使用此范围时,您可以清除去重历史,只影响此节点实例而不影响其他节点。
- Workflow 工作流:在工作流级别存储去重数据。这与设置为使用"workflow 工作流"范围的任何其他 Remove Duplicate 去重节点共享去重数据。n8n 仍将独立管理设置为"node 节点"范围的其他 Remove Duplicate 去重节点的去重数据。
当您选择 Value Is New 值是新的 作为您的 Keep Items Where 保留项目条件 选择时,此选项也可用:
- History Size 历史大小:n8n 存储的项目数量,用于跟踪跨执行的重复项。Scope 范围 选项的值决定此历史大小是特定于此单个 Remove Duplicate 去重节点实例还是与工作流中的其他实例共享。默认情况下,n8n 存储 10,000 个项目。
Clear Deduplication History 清除去重历史#
当您将"Operation 操作"字段设置为 Clear Deduplication History 清除去重历史 时,Remove Duplicates 去重节点管理和清除先前执行中存储的项目。此操作不影响当前输入中的任何项目。相反,它管理"Remove Items Processed in Previous Executions 删除先前执行中处理的项目"操作使用的项目数据库。
Clear Deduplication History parameters 清除去重历史参数#
使用 Clear Deduplication History 清除去重历史 操作时,以下参数可用:
- Mode 模式:您希望如何管理数据库中存储的键/值项目。以下选项可用:
- Clean Database 清理数据库:删除数据库中存储的所有去重数据。这将去重数据库重置为其原始状态。
Clear Deduplication History options 清除去重历史选项#
使用 Clear Deduplication History 清除去重历史 操作时,以下选项可用:
- Scope 范围:设置 n8n 在管理去重数据库时使用的范围。
- Node 节点:(默认)管理特定于此 Remove Duplicates 去重节点实例的去重数据库。
- Workflow 工作流:管理所有使用工作流范围的 Remove Duplicate 去重节点实例共享的去重数据库。
模板和示例#
有关使用 Remove Duplicates 去重节点的模板和使用示例,请参考 模板和示例。
相关资源#
了解更多关于 n8n 工作流中的数据结构和数据流。