模板和示例#
以下是一些关于 Remove Duplicates 节点 的模板和示例。 连续性示例说明 本节中的示例是连续的,请按顺序依次操作,以避免出现意外结果。
模板#
浏览 Remove Duplicates 集成模板,或 搜索所有模板
使用 Code 节点设置示例数据#
创建一个包含示例输入数据的工作流,用于测试 Remove Duplicates 节点。
- 在画布中添加一个 Code 节点,并将其连接到 Manual Trigger 节点。
- 在 Code 节点中,将 Mode(模式)设置为 Run Once for Each Item(每个项目运行一次),将 Language(语言)设置为 JavaScript。
- 将以下 JavaScript 代码片段粘贴到 JavaScript 字段中:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22| ``` letdata=[];
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'}, ] }
---|---
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 节点,以移除当前输入中具有相同 `job` 数据的重复项。
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 Duplicates)”节点依次连接。将第一个节点设置为使用 去除当前输入中重复的项目(Remove Items Repeated Within Current Input) 操作,第二个节点设置为使用 去除在之前执行中已处理的项目(Remove Items Processed in Previous Executions) 操作。
- 打开 Code 节点,取消注释(删除
//)"Tom Hanks" 所在行。 - 在画布上再次选择 执行工作流(Execute workflow)。然后再次打开“去除重复项”节点以查看结果。
n8n 会将当前输入的数据与之前执行中存储的项目进行比较。这一次,保留(Kept) 选项卡包含来自代码节点的一个新记录:
| 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 |
在继续之前,请清除去重历史记录,以便为下一个示例做好准备:
- 打开“Remove Duplicates”节点,将 Operation(操作) 设置为 Clear Deduplication History(清除去重历史)。
- 点击 Execute step(执行步骤) 以清除当前的去重历史。
仅保留值高于任何先前值的项目#
- 打开 Remove Duplicates 节点,将 Operation(操作) 设置为 Remove Items Processed in Previous Executions(移除之前执行中已处理的项目)。
- 将 Keep Items Where(保留条件) 参数设置为 Value Is Higher than Any Previous Value(值高于任何先前值)。
- 将 Value to Dedupe On(用于去重的值) 参数设置为
{{ $json.id }}。 - 在画布上选择 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 |
- 打开 Code 节点,取消注释(移除
//)"Madonna" 和 "Bob Dylan" 对应的行。 - 在画布上,再次选择 执行工作流(Execute workflow)。然后再次打开“去除重复项”节点以查看结果。
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) 选项卡则包含 id 列值小于或等于之前最大值(9)的 13 个项目。尽管是新数据,该表仍包含了 "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 |
在继续之前,请清除去重历史记录,以便为下一个示例做好准备:
- 打开 Remove Duplicates 节点,将 操作(Operation) 设置为 清除去重历史(Clear Deduplication History)。
- 点击 执行步骤(Execute step) 以清除当前的去重历史。
保留值为晚于任何先前日期的项目
- 打开 Remove Duplicates 节点,将 操作(Operation) 设置为 移除之前执行中已处理的项目(Remove Items Processed in Previous Executions)。
- 将 保留条件(Keep Items Where) 参数设置为 值是晚于任何先前日期的时间(Value Is a Date Later than Any Previous Date)。
- 将 用于去重的值(Value to Dedupe On) 参数设置为
{{ $json.last_updated }}。 - 在画布上,点击 执行工作流(Execute workflow) 来运行工作流。然后打开 Remove Duplicates 节点查看结果。
n8n 会将当前输入的数据与之前执行中存储的项目进行比较。由于这是在清除历史记录后首次运行“去除重复项(Remove Duplicates)”节点,n8n 将处理所有数据项,并将其放入 保留(Kept) 输出选项卡中。项目的顺序可能与输入数据中的顺序不同:
| 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 |
| 15 | Bob Dylan | Folk singer | 2024-09-24T08:03:16.493Z |
-
打开 Code 节点,取消注释(移除
//)"Harry Nilsson" 和 "Kylie Minogue" 对应的行。 -
在画布上再次选择 执行工作流(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 | Pop star | 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 | Singer-songwriter | 2020-10-17T17:11:38.493Z |
| 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 |
| 15 | Bob Dylan | Folk singer | 2024-09-24T08:03:16.493Z |