跳到主要内容

模板和示例#

以下是 Remove Duplicates 节点的一些模板和示例。

连续示例

本节中包含的示例是一个序列。请按顺序操作以避免意外结果。

模板#

浏览模板和示例集成模板,或搜索所有模板

使用 Code 节点设置示例数据#

创建一个包含一些示例输入数据的工作流来试用 Remove Duplicates 节点。

  1. 将 Code 节点添加到画布并将其连接到 Manual Trigger 节点。
  2. 在 Code 节点中,将 Mode 设置为 Run Once for Each Item,将 Language 设置为 JavaScript
  3. 将以下 JavaScript 代码片段粘贴到 JavaScript 字段中:
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'},
]
}
  1. 将 Split Out 节点添加到画布并将其连接到 Code 节点。
  2. 在 Split Out 节点中,在 Fields To Split Out 字段中输入 data

从当前输入中删除重复项#

  1. 将 Remove Duplicates 节点添加到画布并将其连接到 Split Out 节点。选择 Remove items repeated within current input 作为 Action 开始。
  2. 打开 Remove Duplicates 节点并确保 Operation 设置为 Remove Items Repeated Within Current Input
  3. Compare 字段中选择 All fields
  4. 选择 Execute step 以运行 Remove Duplicates 节点,删除当前输入中的重复数据。

n8n 删除所有字段中具有相同数据的项目。你的表格视图输出应如下所示:

idnamejoblast_updated
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z
  1. 再次打开 Remove Duplicates 节点并将 Compare 参数更改为 Selected Fields
  2. Fields To Compare 字段中输入 job
  3. 选择 Execute step 以运行 Remove Duplicates 节点,删除当前输入中的重复数据。

n8n 删除当前输入中具有相同 job 数据的项目。你的表格视图输出应如下所示:

idnamejoblast_updated
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z

保留值为新值的项目#

  1. 打开 Remove Duplicates 节点并将 Operation 设置为 Remove Items Processed in Previous Executions
  2. Keep Items Where 参数设置为 Value Is New
  3. Value to Dedupe On 参数设置为 {{ $json.name }}
  4. 在画布上,选择 Execute workflow 以运行工作流。打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。由于这是第一次使用此操作运行 Remove Duplicates 节点,n8n 处理所有数据项目并将它们放入 Kept 输出选项卡。项目的顺序可能与输入数据中的顺序不同:

idnamejoblast_updated
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z

仅与先前执行进行比较

当前输入项目仅与先前执行中存储的项目进行比较。这意味着在此操作模式下不会删除当前输入中重复的项目。如果你需要删除当前输入跨执行的重复项目,请按顺序连接两个 Remove Duplicate 节点。将第一个设置为使用 Remove Items Repated Within Current Input 操作,将第二个设置为使用 Remove Items Processed in Previous Executions 操作。

  1. 打开 Code 节点并取消注释(删除 //)"Tom Hanks" 的行。
  2. 在画布上,再次选择 Execute workflow。再次打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。这次,Kept 选项卡包含来自 Code 节点的一条新记录:

idnamejoblast_updated
9Tom HanksActor2024-10-17T13:58:31.493Z

Discarded 选项卡包含先前执行处理的项目:

idnamejoblast_updated
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z

在继续之前,清除重复历史记录以准备下一个示例:

  1. 打开 Remove Duplicates 节点并将 Operation 设置为 Clear Deduplication History
  2. 选择 Execute step 以清除当前的重复历史记录。

保留值高于任何先前值的项目#

  1. 打开 Remove Duplicates 节点并将 Operation 设置为 Remove Items Processed in Previous Executions
  2. Keep Items Where 参数设置为 Value Is Higher than Any Previous Value
  3. Value to Dedupe On 参数设置为 {{ $json.id }}
  4. 在画布上,选择 Execute workflow 以运行工作流。打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。由于这是清除历史记录后第一次运行 Remove Duplicates 节点,n8n 处理所有数据项目并将它们放入 Kept 输出选项卡。项目的顺序可能与输入数据中的顺序不同:

idnamejoblast_updated
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z
9Tom HanksActor2024-10-17T13:58:31.493Z
  1. 打开 Code 节点并取消注释(删除 //)"Madonna" 和 "Bob Dylan" 的行。
  2. 在画布上,再次选择 Execute workflow。再次打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。这次,Kept 选项卡包含 "Bob Dylan" 的单个条目。n8n 保留此项目是因为其 id 列值 (15) 高于任何先前的值(先前的最大值为 9):

idnamejoblast_updated
15Bob DylanFolk singer2024-09-24T08:03:16.493Z

Discarded 选项卡包含 13 个 id 列值等于或小于先前最大值 (9) 的项目。即使它是新的,此表也包含 "Madonna" 的条目,因为其 id 值不大于先前的最大值:

idnamejoblast_updated
0MadonnaPop star2024-10-17T17:11:38.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z
9Tom HanksActor2024-10-17T13:58:31.493Z

在继续之前,清除重复历史记录以准备下一个示例:

  1. 打开 Remove Duplicates 节点并将 Operation 设置为 Clear Deduplication History
  2. 选择 Execute step 以清除当前的重复历史记录。

保留值为晚于任何先前日期的项目#

  1. 打开 Remove Duplicates 节点并将 Operation 设置为 Remove Items Processed in Previous Executions
  2. Keep Items Where 参数设置为 Value Is a Date Later than Any Previous Date
  3. Value to Dedupe On 参数设置为 {{ $json.last_updated }}
  4. 在画布上,选择 Execute workflow 以运行工作流。打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。由于这是清除历史记录后第一次运行 Remove Duplicates 节点,n8n 处理所有数据项目并将它们放入 Kept 输出选项卡。项目的顺序可能与输入数据中的顺序不同:

idnamejoblast_updated
0MadonnaPop star2024-10-17T17:11:38.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z
9Tom HanksActor2024-10-17T13:58:31.493Z
15Bob DylanFolk singer2024-09-24T08:03:16.493Z
  1. 打开 Code 节点并取消注释(删除 //)"Harry Nilsson" 和 "Kylie Minogue" 的行。

  2. 在画布上,再次选择 Execute workflow。再次打开 Remove Duplicates 节点以检查结果。

n8n 将当前输入数据与先前执行中存储的项目进行比较。这次,Kept 选项卡包含 "Kylie Minogue" 的单个条目。n8n 保留此项目是因为其 last_updated 列值 (2024-10-24T08:03:16.493Z) 晚于任何先前的值(先前的最新日期为 2024-10-17T17:11:38.493Z):

idnamejoblast_updated
11Kylie MinoguePop star2024-10-24T08:03:16.493Z

Discarded 选项卡包含 15 个 last_updated 列值等于或早于先前最新日期 (2024-10-17T17:11:38.493Z) 的项目。即使它是新的,此表也包含 "Harry Nilsson" 的条目,因为其 last_updated 值不晚于先前的最大值:

idnamejoblast_updated
10Harry NilssonSinger-songwriter2020-10-17T17:11:38.493Z
0MadonnaPop star2024-10-17T17:11:38.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
1Taylor SwiftPop star2024-09-20T10:12:43.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
2Ed SheeranSinger-songwriter2024-10-05T08:30:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
3AdeleSinger-songwriter2024-10-07T14:15:59.493Z
4Bruno MarsSinger-songwriter2024-08-25T17:45:12.493Z
5Billie EilishSinger-songwriter2024-09-10T09:30:12.493Z
6Katy PerryPop star2024-10-08T12:30:45.493Z
7Lady GagaPop star2024-09-15T14:45:30.493Z
8RihannaPop star2024-10-01T11:50:22.493Z
9Tom HanksActor2024-10-17T13:58:31.493Z
15Bob DylanFolk singer2024-09-24T08:03:16.493Z