模板与示例#
以下是一些Remove Duplicates节点的模板和示例。
持续示例
本节包含的示例是一个序列。请按顺序逐一操作,以避免意外结果。
模板#
使用代码节点设置示例数据#
创建一个包含示例输入数据的工作流,以试用Remove Duplicates节点。
- 在画布上添加一个代码节点,并将其连接到手动触发节点。
- 在代码节点中,将模式设置为每个项目运行一次,并将语言设置为JavaScript。
- Paste the following JavaScript code snippet in the JavaScript field:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
let data =[]; return { data: [ { id: 1, name: 'Taylor Swift', job: 'Pop star', last_updated: '2024-09-20T10:12:43.493Z' }, { id: 2, name: 'Ed Sheeran', job: 'Singer-songwriter', last_updated: '2024-10-05T08:30:59.493Z' }, { id: 3, name: 'Adele', job: 'Singer-songwriter', last_updated: '2024-10-07T14:15:59.493Z' }, { id: 4, name: 'Bruno Mars', job: 'Singer-songwriter', last_updated: '2024-08-25T17:45:12.493Z' }, { id: 1, name: 'Taylor Swift', job: 'Pop star', last_updated: '2024-09-20T10:12:43.493Z' }, // duplicate { id: 5, name: 'Billie Eilish', job: 'Singer-songwriter', last_updated: '2024-09-10T09:30:12.493Z' }, { id: 6, name: 'Katy Perry', job: 'Pop star', last_updated: '2024-10-08T12:30:45.493Z' }, { id: 2, name: 'Ed Sheeran', job: 'Singer-songwriter', last_updated: '2024-10-05T08:30:59.493Z' }, // duplicate { id: 7, name: 'Lady Gaga', job: 'Pop star', last_updated: '2024-09-15T14:45:30.493Z' }, { id: 8, name: 'Rihanna', job: 'Pop star', last_updated: '2024-10-01T11:50:22.493Z' }, { id: 3, name: 'Adele', job: 'Singer-songwriter', last_updated: '2024-10-07T14:15:59.493Z' }, // duplicate //{ id: 9, name: 'Tom Hanks', job: 'Actor', last_updated: '2024-10-17T13:58:31.493Z' }, //{ id: 0, name: 'Madonna', job: 'Pop star', last_updated: '2024-10-17T17:11:38.493Z' }, //{ id: 15, name: 'Bob Dylan', job: 'Folk singer', last_updated: '2024-09-24T08:03:16.493Z'}, //{ id: 10, name: 'Harry Nilsson', job: 'Singer-songwriter', last_updated: '2020-10-17T17:11:38.493Z' }, //{ id: 11, name: 'Kylie Minogue', job: 'Pop star', last_updated: '2024-10-24T08:03:16.493Z'}, ] } - 在画布上添加一个Split Out节点并将其连接到Code节点。
- 在Split Out节点中,在Fields To Split Out字段输入
data。
从当前输入中移除重复项#
- 在画布上添加一个“移除重复项”节点,并将其连接到“拆分输出”节点。选择移除当前输入中的重复项作为操作开始。
- 打开“移除重复项”节点,确保操作设置为移除当前输入中的重复项。
- 在比较字段中选择所有字段。
- 选择测试步骤来运行Remove Duplicates节点,移除当前输入中的重复数据。
n8n会移除所有字段数据完全相同的项。表格视图中的输出应如下所示:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
- 再次打开Remove Duplicates节点,将Compare参数更改为Selected Fields。
- 在Fields To Compare字段中,输入
job。 - 选择测试步骤来运行Remove Duplicates节点,移除当前输入中的重复数据。
n8n会移除当前输入中具有相同job数据的条目。表格视图中的输出应如下所示:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | Ed Sheeran | 创作型歌手 | 2024-10-05T08:30:59.493Z |
保留值为新的项目#
- 打开Remove Duplicates节点,将Operation设置为Remove Items Processed in Previous Executions。
- 将保留项目条件参数设置为值为新。
- 将去重依据值参数设置为
{{ $json.name }}。 - 在画布上,选择测试工作流来运行工作流。打开"移除重复项"节点查看结果。
n8n将当前输入数据与之前执行中存储的项目进行比较。由于这是首次使用此操作运行Remove Duplicates节点,n8n会处理所有数据项并将其放入保留输出选项卡中。项目的顺序可能与输入数据中的顺序不同:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
项目仅与之前的执行进行比较
当前输入项仅与之前执行中存储的项进行比较。这意味着在此操作模式下,当前输入中重复的项不会被移除。如果您需要移除当前输入中以及跨执行的重复项,请将两个"移除重复项"节点按顺序连接起来。将第一个节点设置为使用移除当前输入中的重复项操作,第二个节点设置为使用移除之前执行中已处理的项操作。
- 打开代码节点,取消注释(移除
//)"Tom Hanks"所在的行。 - 在画布上,再次选择测试工作流。重新打开"移除重复项"节点以检查结果。
n8n将当前输入数据与之前执行存储的项目进行比较。这次,保留标签页包含来自代码节点的一条新记录:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 9 | 汤姆·汉克斯 | 演员 | 2024-10-17T13:58:31.493Z |
已丢弃标签页包含由上一次执行处理的条目:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
继续之前,请先清除重复历史记录,为下一个示例做好准备:
- 打开Remove Duplicates节点,将Operation设置为Clear Deduplication History。
- 选择测试步骤来清除当前的重复历史记录。
保留值高于之前所有值的项目#
- 打开Remove Duplicates节点,将Operation设置为Remove Items Processed in Previous Executions。
- 将保留项目条件参数设置为值高于任何先前值。
- 将去重依据值参数设置为
{{ $json.id }}。 - 在画布上,选择测试工作流来运行工作流。打开"移除重复项"节点查看结果。
n8n将当前输入数据与之前执行中存储的项目进行比较。由于这是在清除历史记录后首次运行Remove Duplicates节点,n8n会处理所有数据项并将其放入保留输出选项卡中。项目的顺序可能与输入数据中的顺序不同:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
| 9 | 汤姆·汉克斯 | 演员 | 2024-10-17T13:58:31.493Z |
- 打开代码节点,取消注释(移除
//)"Madonna"和"Bob Dylan"对应的行。 - 在画布上,再次选择测试工作流。重新打开"移除重复项"节点以检查结果。
n8n将当前输入数据与之前执行中存储的项目进行比较。这次,保留标签页中仅包含"Bob Dylan"这一条记录。n8n保留该项目是因为其id列的值(15)高于之前的所有值(之前的最大值是9):
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 15 | 鲍勃·迪伦 | 民谣歌手 | 2024-09-24T08:03:16.493Z |
已丢弃标签页包含13条记录,这些记录的id列值等于或小于之前最大值(9)。尽管是新表,但包含"Madonna"条目,因为其id值不大于之前的最大值:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 0 | 麦当娜 | 流行歌手 | 2024-10-17T17:11:38.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | 艾德·希兰 | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
| 9 | 汤姆·汉克斯 | 演员 | 2024-10-17T13:58:31.493Z |
继续之前,请先清除重复历史记录,为下一个示例做好准备:
- 打开Remove Duplicates节点,将Operation设置为Clear Deduplication History。
- 选择测试步骤来清除当前的重复历史记录。
保留值晚于之前所有日期的项目#
- 打开Remove Duplicates节点,将Operation设置为Remove Items Processed in Previous Executions。
- 将保留项目条件参数设置为值大于任何先前日期的日期。
- 将去重依据值参数设置为
{{ $json.last_updated }}。 - 在画布上,选择测试工作流来运行工作流。打开"移除重复项"节点查看结果。
n8n将当前输入数据与之前执行中存储的项目进行比较。由于这是在清除历史记录后首次运行Remove Duplicates节点,n8n会处理所有数据项并将其放入保留输出选项卡中。项目的顺序可能与输入数据中的顺序不同:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 0 | 麦当娜 | 流行歌手 | 2024-10-17T17:11:38.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | Ed Sheeran | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | Ed Sheeran | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
| 9 | 汤姆·汉克斯 | 演员 | 2024-10-17T13:58:31.493Z |
| 15 | 鲍勃·迪伦 | 民谣歌手 | 2024-09-24T08:03:16.493Z |
- 打开代码节点,取消注释(移除
//)"Harry Nilsson"和"Kylie Minogue"对应的行。
- 在画布上,再次选择测试工作流。重新打开"移除重复项"节点以检查结果。
n8n将当前输入数据与之前执行中存储的项目进行比较。这次,保留标签页中包含一个"Kylie Minogue"的条目。n8n保留该项目是因为其last_updated列的值(2024-10-24T08:03:16.493Z)比之前任何值都更新(之前的最新日期是2024-10-17T17:11:38.493Z):
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 11 | 凯莉·米洛 | 流行歌手 | 2024-10-24T08:03:16.493Z |
已废弃标签页包含15条记录,这些记录的last_updated列值等于或早于之前的最新日期(2024-10-17T17:11:38.493Z)。尽管是新表,但其中仍包含"Harry Nilsson"条目,因为它的last_updated值并未超过之前的最大值:
| ID | 名称 | 职位 | 最后更新时间 |
|---|---|---|---|
| 10 | Harry Nilsson | 创作歌手 | 2020-10-17T17:11:38.493Z |
| 0 | 麦当娜 | 流行歌手 | 2024-10-17T17:11:38.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 1 | 泰勒·斯威夫特 | 流行歌手 | 2024-09-20T10:12:43.493Z |
| 2 | Ed Sheeran | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 2 | Ed Sheeran | 创作型歌手 | 2024-10-05T08:30:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 3 | Adele | 创作型歌手 | 2024-10-07T14:15:59.493Z |
| 4 | 布鲁诺·马尔斯 | 创作型歌手 | 2024-08-25T17:45:12.493Z |
| 5 | Billie Eilish | 创作型歌手 | 2024-09-10T09:30:12.493Z |
| 6 | Katy Perry | 流行歌手 | 2024-10-08T12:30:45.493Z |
| 7 | Lady Gaga | 流行歌手 | 2024-09-15T14:45:30.493Z |
| 8 | Rihanna | 流行歌手 | 2024-10-01T11:50:22.493Z |
| 9 | 汤姆·汉克斯 | 演员 | 2024-10-17T13:58:31.493Z |
| 15 | 鲍勃·迪伦 | 民谣歌手 | 2024-09-24T08:03:16.493Z |