在人事花名册、库存快照与权限清单的两期对照中,分析师需要回答三件事:谁是新进、谁已流失、谁改了字段。两边都有且完全没变的行不应出现在任何结果里,否则复核清单会被「没变化」淹没。
如果采用传统手工方式,只能靠查找、筛选或把两表拼在一起目视,两侧键名不同时更容易对错行;漏掉「只比某几列」的口径后,部门变了、职级没变的人也会被误判进变更,源表还常被改乱。
DT-Bot 的 「表对比」 算子专为解决此类两表按键对齐、一次写出新增 / 流失 / 变更三张新表的问题而设计。源表只读;某张结果可以为 0 行。两边都有且未点名字段没变的行,三张结果里都不会出现。某一侧键不唯一会失败,不会静默去重。
一、 核心能力与适用场景
「表对比」算子聚焦于按键三路分流,覆盖以下三大核心能力:
| 核心能力 | 解决什么业务问题 | 典型业务场景 |
|---|---|---|
| 按键写出新增 / 流失 / 变更 | 新侧有、旧侧无 → 新增;旧侧有、新侧无 → 流失;两边都有但字段变了 → 变更。没变的行三路都不出现。 | 人事把本月名单对上月名单:谁新进、谁走了、谁改了部门。 |
| 只看某几列变没变 | 对齐后只比较指定字段;未点名列的变化不进入变更表。新增、流失仍按键是否对齐计算。 | 只看职级有没有变;部门变了但职级没变时,变更表可以为 0 行。 |
| 异名键对齐与自定义三路表名 | 两侧键列名不同时写清对应关系;三路结果可用业务名命名。 | 库存当前用货号、库存上次用商品编码对齐;新增输出「新进」,流失输出「出库」,变更输出「数量变动」。 |
二、 边界指南:它与相近算子有何区别?
在构建数据工作流时,理解算子之间的职责边界至关重要:
| 比较维度 | 「表对比」算子 | 「表格合并」算子 | 「匹配填充」算子 | 「筛选器」算子 |
|---|---|---|---|---|
| 主要定位 | 两期按键对齐,拆出新增 / 流失 / 变更 | 两表拼成一张 | 按键把字段填回原表 | 单表按条件筛行 |
| 输出机制 | 源表只读,一次写出三张新表 | 源表只读,写出一张新表 | 就地或贴列,行数跟主表走 | 源表只读,写出一张新表 |
| 典型动作 | 键对齐、三路分流、变更列并排、写「变更字段」 | 上下拼行、按键左右连接 | VLOOKUP 式补列 | 比较、包含、为空、提取重复行 |
| 如何选择 | “看谁新进、谁走了、谁改了部门” | “把两期名单拼成一张长表” | “按工号把部门填回本月表” | “从单张名单里筛出销售部” |
注意:本节点不是 Excel 单元格逐格差异分析,也不在源表上就地改写。
三、 提示词编写规范与公式
「表对比」算子支持自然语言直接表达,建议遵循以下标准的三要素编写公式:
【新侧 / 旧侧】 + 【对齐键】 + 【三路结果名(可选)】
1. 新侧 / 旧侧表达
- 点名两张表:哪张是本月 / 当前,哪张是上月 / 对照,例如
对比 “本月名单” 和 “上月名单”; - 顺序要稳定:新侧决定「新增」与「变更」的当前值,旧侧决定「流失」与变更前的值。
2. 键与比较范围表达
- 同名键:
按工号看新增、流失、字段变更; - 异名键:
当前侧用货号、上次侧用商品编码对齐; - 只比部分列:
只看职级有没有变——新增、流失仍按键有没有对齐来算,不受「只看职级」影响。
3. 结果名(可选)
- 不写结果名:三路分别为「新表名_新增」「旧表名_流失」「新表名_变更」;
- 三路都点名:例如
新增输出 “新进”,流失输出 “出库”,变更输出 “数量变动”; - 只点一个结果名、又不说三路:本节点应拒绝。
- 某一侧键不唯一:会失败,不会静默去重。
示例:
对比 “本月名单” 和 “上月名单”,按工号看新增、流失、字段变更。
对应三段:
- 新侧:本月名单;旧侧:上月名单
- 键:工号
- 结果:默认三张
四、 核心功能与图解实战
以下结合真实企业数据场景,展示「表对比」在不同需求下的处理效果:
场景 1:按工号看新增、流失、变更
业务背景:人事要把本月在册名单对上月名单,一次得到新进、离职与部门变更三张清单;两边完全没变的人不应出现在任何结果里。
【处理前:本月名单(新侧)】
| 工号 | 姓名 | 部门 | 职级 |
|---|---|---|---|
| E01 | 张三 | 销售 | 经理 |
| E02 | 李四 | 人事 | 专员 |
| E03 | 王五 | 销售 | 专员 |
| E04 | 赵六 | 销售 | 主管 |
【处理前:上月名单(旧侧)】
| 工号 | 姓名 | 部门 | 职级 |
|---|---|---|---|
| E01 | 张三 | 销售 | 经理 |
| E02 | 李四 | 人事 | 专员 |
| E04 | 赵六 | 人事 | 主管 |
| E05 | 钱七 | 财务 | 专员 |
【执行提示词】
对比 “本月名单” 和 “上月名单”,按工号看新增、流失、字段变更。
【处理后:本月名单_新增】
| 工号 | 姓名 | 部门 | 职级 | 分流说明 |
|---|---|---|---|---|
| E03 | 王五 | 销售 | 专员 | 本月有、上月无 |
【处理后:上月名单_流失】
| 工号 | 姓名 | 部门 | 职级 | 分流说明 |
|---|---|---|---|---|
| E05 | 钱七 | 财务 | 专员 | 上月有、本月无 |
【处理后:本月名单_变更】
| 工号 | 姓名 | [上月名单]_部门 | [本月名单]_部门 | 职级 | 变更字段 |
|---|---|---|---|---|---|
| E04 | 赵六 | 人事 | 销售 | 主管 | 部门 |
逻辑详解:新增只有 E03 王五;流失只有 E05 钱七;变更只有 E04 赵六。没变的列(姓名、职级)保持单列;变了的部门写成
[上月名单]_部门/[本月名单]_部门,并带「变更字段」列。E01、E02 两边一样,三张结果里都不会出现。源表行数不变。
场景 2:只看某几列变没变
业务背景:仍是上面两张名单。本次复核只关心职级有没有变;部门调整不进入本轮变更清单。新进与流失仍要按工号是否对齐计算。
【处理前】:与场景 1 相同的「本月名单」「上月名单」。
【执行提示词】
对比本月名单和上月名单,按工号对齐,只看职级有没有变。
【处理后:新增】
| 工号 | 姓名 | 部门 | 职级 | 分流说明 |
|---|---|---|---|---|
| E03 | 王五 | 销售 | 专员 | 仍按键对齐:本月有、上月无 |
【处理后:流失】
| 工号 | 姓名 | 部门 | 职级 | 分流说明 |
|---|---|---|---|---|
| E05 | 钱七 | 财务 | 专员 | 仍按键对齐:上月有、本月无 |
【处理后:变更】
| (0 行) | 说明 |
|---|---|
| — | 赵六职级仍是主管;部门变化本条不比,变更表为 0 行 |
逻辑详解:赵六职级仍是主管,变更表应为 0 行。新增、流失仍按键有没有对齐来算,不受「只看职级」影响。源表只读。
场景 3:两侧键名不同、自定义三路表名
业务背景:仓库要把当前库存对上次快照。当前侧键叫「货号」,上次侧键叫「商品编码」;三路结果要用业务名「新进 / 出库 / 数量变动」,而不是默认的「_新增 / _流失 / _变更」。
【处理前:库存当前(新侧)】
| 货号 | 品名 | 数量 |
|---|---|---|
| A01 | 水杯 | 10 |
| A02 | 毛巾 | 5 |
| A03 | 杯子 | 8 |
【处理前:库存上次(旧侧)】
| 商品编码 | 品名 | 数量 |
|---|---|---|
| A01 | 水杯 | 10 |
| A02 | 毛巾 | 3 |
| A04 | 纸巾 | 20 |
【执行提示词】
对比 “库存当前” 和 “库存上次”,当前侧用货号、上次侧用商品编码对齐。新增输出 “新进”,流失输出 “出库”,变更输出 “数量变动”。
【处理后:新进】
| 货号 | 品名 | 数量 | 分流说明 |
|---|---|---|---|
| A03 | 杯子 | 8 | 当前有、上次无 |
【处理后:出库】
| 商品编码 | 品名 | 数量 | 分流说明 |
|---|---|---|---|
| A04 | 纸巾 | 20 | 上次有、当前无 |
【处理后:数量变动】
| 货号 | 品名 | [库存上次]_数量 | [库存当前]_数量 | 变更字段 |
|---|---|---|---|---|
| A02 | 毛巾 | 3 | 5 | 数量 |
逻辑详解:键可以异名映射(货号 ↔ 商品编码)。三张结果用提示词起的名字。A01 两边数量相同,三路都不出现。源表「库存当前」「库存上次」只读。
五、 常见问题与操作贴士(FAQ)
Q1:两边都有且字段没变的行,会出现在哪张结果表?
答:三张结果里都不会出现。本节点只输出新增、流失、变更;完全一致的行被有意排除,避免复核清单被「没变化」淹没。源表行数不变。
Q2:只点一个结果名、又不说三路,或某一侧工号重复,会怎样?
答:只点一个结果名、又不说三路,本节点应拒绝。某一侧键不唯一会失败,不会静默去重——请先用「表操作」把键整理唯一,再做对比。
Q3:「只看职级」会不会把新增、流失也收窄?
答:不会。新增、流失仍按键有没有对齐来算;「只看某几列」只影响变更这一路。赵六部门变了、职级没变时,变更表可以为 0 行,但新进与流失仍在。
Q4:表对比和「表格合并」「匹配填充」该怎么选?
答:两表拼成一张请用「表格合并」。按键把字段填回原表请用「匹配填充」。单表筛行请用「筛选器」。本节点不是 Excel 单元格逐格差异分析。
六、 关联算子导航
- 若需把两张表拼成一张长表或宽表:请参考 数据处理 · 表格合并
- 若需按键把对照表字段填回当前表:请参考 数据处理 · 匹配填充
- 若需在单张表上按条件抽出一行子集:请参考 数据处理 · 筛选器
- 欲下载真实数据表格亲自动手实测:请查阅 数据案例 · 表对比案例