Skip to content

模板与示例#

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

连续示例

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

模板#

Browse 模板与示例 integration templates, or search all templates

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

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

  1. 在画布上添加一个 Code 节点,并将其连接到 Manual Trigger 节点。
  2. 在 Code 节点中,将模式设为为每个项目运行一次语言设为JavaScript
  3. JavaScript 字段中粘贴以下 JavaScript 代码片段:
     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' },  // 重复项
        { 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' },  // 重复项
        { 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' },  // 重复项
        //{ 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'},
      ]
    }
    
  4. 在画布上添加一个 Split Out 节点,并将其连接到 Code 节点。
  5. 在 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 会移除所有字段数据完全相同的条目。表格视图中的输出应如下所示:

id name job last_updated
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
4 Bruno Mars Singer-songwriter 2024-08-25T17:45:12.493Z
5 Billie Eilish Singer-songwriter 2024-09-10T09:30:12.493Z
6 Katy Perry Pop star 2024-10-08T12:30:45.493Z
7 Lady Gaga Pop star 2024-09-15T14:45:30.493Z
8 Rihanna Pop star 2024-10-01T11:50:22.493Z
  1. 再次打开 Remove Duplicates 节点,将 Compare 参数改为 Selected Fields
  2. Fields To Compare 字段中输入 job
  3. 选择 Execute step 运行 Remove Duplicates 节点,移除当前输入中的重复数据。

n8n 会移除当前输入中 job 字段数据相同的条目。表格视图中的输出应如下所示:

id name job last_updated
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-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(保留)输出选项卡。项目顺序可能与输入数据中的顺序不同:

id name job last_updated
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
4 Bruno Mars Singer-songwriter 2024-08-25T17:45:12.493Z
5 Billie Eilish Singer-songwriter 2024-09-10T09:30:12.493Z
6 Katy Perry Pop star 2024-10-08T12:30:45.493Z
7 Lady Gaga Pop star 2024-09-15T14:45:30.493Z
8 Rihanna Pop star 2024-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 节点的一条新记录:

id name job last_updated
9 Tom Hanks Actor 2024-10-17T13:58:31.493Z

Discarded(丢弃)选项卡包含之前执行处理过的项目:

id name job last_updated
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
4 Bruno Mars Singer-songwriter 2024-08-25T17:45:12.493Z
5 Billie Eilish Singer-songwriter 2024-09-10T09:30:12.493Z
6 Katy Perry Pop star 2024-10-08T12:30:45.493Z
7 Lady Gaga Pop star 2024-09-15T14:45:30.493Z
8 Rihanna Pop star 2024-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(保留)输出标签页。项目的顺序可能与输入数据中的顺序不同:

id name job last_updated
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
4 Bruno Mars Singer-songwriter 2024-08-25T17:45:12.493Z
5 Billie Eilish Singer-songwriter 2024-09-10T09:30:12.493Z
6 Katy Perry Pop star 2024-10-08T12:30:45.493Z
7 Lady Gaga Pop star 2024-09-15T14:45:30.493Z
8 Rihanna Pop star 2024-10-01T11:50:22.493Z
9 Tom Hanks Actor 2024-10-17T13:58:31.493Z
  1. 打开 Code 节点,取消注释(移除 //)"Madonna" 和 "Bob Dylan" 对应的行。
  2. 在画布上再次选择 Execute workflow。再次打开 Remove Duplicates 节点查看结果。

n8n 会将当前输入数据与之前执行存储的项目进行比较。这次 Kept 标签页中只包含 "Bob Dylan" 的条目。n8n 保留该项目是因为其 id 列值(15)高于之前的所有值(之前的最大值是 9):

id name job last_updated
15 Bob Dylan Folk singer 2024-09-24T08:03:16.493Z

Discarded(丢弃)标签页包含 13 个 id 列值小于或等于之前最大值(9)的项目。即使 "Madonna" 是新条目,该表也包含它,因为其 id 值不大于之前的最大值:

id name job last_updated
0 Madonna Pop star 2024-10-17T17:11:38.493Z
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
1 Taylor Swift Pop star 2024-09-20T10:12:43.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
2 Ed Sheeran Singer-songwriter 2024-10-05T08:30:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
3 Adele Singer-songwriter 2024-10-07T14:15:59.493Z
4 Bruno Mars Singer-songwriter 2024-08-25T17:45:12.493Z
5 Billie Eilish Singer-songwriter 2024-09-10T09:30:12.493Z
6 Katy Perry Pop star 2024-10-08T12:30:45.493Z
7 Lady Gaga Pop star 2024-09-15T14:45:30.493Z
8 Rihanna Pop star 2024-10-01T11:50:22.493Z
9 Tom Hanks Actor 2024-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 输出选项卡。条目的顺序可能与输入数据中的顺序不同:

id name job last_updated
0 Madonna 流行歌手 2024-10-17T17:11:38.493Z
1 Taylor Swift 流行歌手 2024-09-20T10:12:43.493Z
1 Taylor Swift 流行歌手 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 Bruno Mars 创作型歌手 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 Tom Hanks 演员 2024-10-17T13:58:31.493Z
15 Bob Dylan 民谣歌手 2024-09-24T08:03:16.493Z
  1. 打开 Code 节点,取消注释(移除 //)"Harry Nilsson" 和 "Kylie Minogue" 对应的行。
  1. 在画布上再次选择 Execute workflow。再次打开 Remove Duplicates 节点查看结果。

n8n 会将当前输入数据与之前执行存储的条目进行比较。这次 Kept 选项卡中只包含 "Kylie Minogue" 的条目。n8n 保留这个条目是因为它的 last_updated 列值 (2024-10-24T08:03:16.493Z) 比之前的所有值都更晚(之前的最晚日期是 2024-10-17T17:11:38.493Z):

id name job last_updated
11 Kylie Minogue 流行歌手 2024-10-24T08:03:16.493Z

Discarded 选项卡包含 15 个 last_updated 列值等于或早于之前最晚日期 (2024-10-17T17:11:38.493Z) 的条目。尽管是新添加的,这个表格包含了 "Harry Nilsson" 的条目,因为它的 last_updated 值没有超过之前的最大值:

id name job last_updated
10 Harry Nilsson 创作型歌手 2020-10-17T17:11:38.493Z
0 Madonna 流行歌手 2024-10-17T17:11:38.493Z
1 Taylor Swift 流行歌手 2024-09-20T10:12:43.493Z
1 Taylor Swift 流行歌手 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 Bruno Mars 创作型歌手 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 Tom Hanks 演员 2024-10-17T13:58:31.493Z
15 Bob Dylan 民谣歌手 2024-09-24T08:03:16.493Z