Compare Datasets 比较数据集#
Compare Datasets 节点帮助您比较来自两个输入流的数据。
节点参数#
- 决定要比较哪些字段。在Input A Field 输入 A 字段中,输入您想从输入流 A 使用的字段名称。在Input B Field 输入 B 字段中,输入您想从输入流 B 使用的字段名称。
- 可选:您可以按多个字段进行比较。选择Add Fields to Match 添加要匹配的字段来设置更多比较。
- 选择如何处理数据集之间的差异。在When There Are Differences 当存在差异时,选择以下选项之一:
- Use Input A Version 使用输入 A 版本:将输入流 A 视为真实来源。
- Use Input B Version 使用输入 B 版本:将输入流 B 视为真实来源。
- Use a Mix of Versions 使用混合版本:为不同字段使用不同的输入。
- 使用Prefer 首选选择Input A Version 输入 A 版本或Input B Version 输入 B 版本作为主要真实来源。
- 在For Everything Except 除了所有内容外中输入作为例外的输入字段,从另一个输入源提取。要添加多个输入字段,请输入逗号分隔的列表。
- Include Both Versions 包含两个版本:在输出中包含两个输入流,这可能会使结构更复杂。
- 决定是否使用Fuzzy Compare 模糊比较。打开时,比较将在比较字段时容忍小的类型差异。例如,数字 3 和字符串
3
在打开Fuzzy Compare 模糊比较时被视为相同,但在关闭时不会被视为相同。
理解项目比较#
项目比较是一个两阶段过程:
- n8n 检查您选择比较的字段值是否在两个输入之间匹配。
- 如果要比较的字段匹配,n8n 然后比较项目内的所有字段,以确定项目是否相同或不同。
节点选项#
使用节点Options 选项来完善您的比较或调整比较行为。
Fields to Skip Comparing 跳过比较的字段#
输入您想在比较中忽略的字段名称。
例如,如果您使用 person.language
作为Fields to Match 要匹配的字段比较下面的两个数据集,n8n 会返回它们为不同。如果您将 person.name
添加到Fields to Skip Comparing 跳过比较的字段,n8n 会返回它们为匹配。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
|
Disable Dot Notation 禁用点表示法#
是否禁止在字段名称中使用 parent.child
引用子字段(打开)或允许它(关闭,默认)。
Multiple Matches 多重匹配#
选择如何处理重复数据。默认是Include All Matches 包含所有匹配。您可以选择Include First Match Only 仅包含第一个匹配。
例如,给定这两个数据集:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
|
n8n 在Same Branch 相同分支选项卡中返回三个项目。两个分支中的数据是相同的。
如果您选择Include First Match Only 仅包含第一个匹配,n8n 在Same Branch 相同分支选项卡中返回两个项目。两个分支中的数据是相同的,但 n8n 只返回匹配的"apple"项目的第一次出现。
理解输出#
有四个输出选项:
- In A only Branch 仅在 A 中分支:包含仅在第一个输入中出现的数据。
- Same Branch 相同分支:包含在两个输入中相同的数据。
- Different Branch 不同分支:包含输入之间不同的数据。
- In B only Branch 仅在 B 中分支:包含仅在第二个输出中出现的数据。
模板和示例#