交叉月报要把「谁做行、谁做列、格子填哪一列、怎么聚合」一次说清;宽表回收成长表时,指定列与「除某列外」两种收法行集合应对齐,值为 0 的格子仍要留行。透视若把求和做成最大,华东 1 月会从 120 错成 100,口径完全不同。
「透视反透视」算子专为长表与宽表互换而设计,源表只读。本案例提供一套完整的工业测试数据包,带您由浅入深验证算子的透视(求和 / 计数 / 平均 / 最大最小)、反透视指定列或除某列外以及指定结果名。
一、 案例数据集说明
本案例包含 4 份典型的业务数据表。测试前,建议一键下载全部数据并导入至当前工作流的工作空间中:
数据声明:本页提供的全部案例表格均为测试数据,由 AI 生成,不对应任何真实个人、机构或业务记录,仅供功能演示与操作练习,请勿作为真实业务依据。
1. 测试表结构速览
| 数据表名称 | 业务场景角色 | 初始包含字段列表 | 测试重点验证方向 |
|---|---|---|---|
| 销售明细.xlsx | 地区×月份长表 | 地区, 月份, 金额, 单数(华东 1 月金额 100、单数 2;全文 5 行) |
透视:行=地区、列=月份、值=金额;求和 / 计数 / 平均 / 最大 / 最小 |
| 月度宽表.xlsx | 月份已摊开的宽表 | 姓名, 1月, 2月, 3月(张三 10 / 20 / 30) |
反透视指定列,或除姓名外都竖起来 |
| 状态宽表.xlsx | 状态已摊开的宽表 | 工号, 待处理, 已完成, 已关闭(E01 为 1 / 2 / 0) |
状态列反透视成状态和数量 |
| 干扰表.xlsx | 干扰 | 备注, 内容 |
未点名不被改写 |
也可以按需单表下载:
二、 测试上手步骤指引
按照以下标准步骤进行交互式测试:
- 导入案例数据:在 DT-Bot 界面左侧「工作空间」区域,点击【导入】,批量上传上述 4 个 Excel 表格。
- 部署算子节点:在左侧算子库中找到「数据统计」分类下的 「透视反透视」 算子,将其拖拽至中间画布区域。
- 录入测试指令:单击选中该「透视反透视」节点,在右侧弹出的属性配置面板中,将下方测试用例中的【测试提示词】复制粘贴至提示词框中。每次只粘贴一条。透视要写清谁做行、谁做列、格子填哪一列;反透视要写清收哪些列。
- 执行并核验:点击节点右上角的【运行】按钮。运行完成后,双击节点输出或在「AI 表编辑器」中核对照「预期输出结果对比」。源表应还在。
- 测试复原技巧:
- 「透视反透视」写出新表,源表只读保留。未写结果名时,新表多为「源表名_透视」或「源表名_反透视」。
- 连续换用例时,可删除上一轮结果表或重新导入,以免同名结果表混淆核验。
三、 核心测试用例集(由浅入深)
用例 1:地区做行、月份做列、金额求和
- 测试目的:验证透视交叉表:行=地区、列=月份、格子填金额并求和;源表与干扰表不被改写。
- 测试提示词:
把 “销售明细” 按地区做行、月份做列,金额求和。
- 预期输出结果对比:
- 结果表(多为「销售明细_透视」):2 行。华东 1 月=120、2 月=80;华北 1 月=50、2 月=70。
- 源表保全:「销售明细」仍 5 行;干扰表不变。
- 核验重点:格子是求和不是最大;未点名不被改写。
用例 2:点名月份列竖起来
- 测试目的:验证指定 1 月、2 月、3 月反透视成月份和金额;值为 0 的格子仍要留行。
- 测试提示词:
把 “月度宽表” 的 1月、2月、3月 反透视成月份和金额。
- 预期输出结果对比:
- 结果表(多为「月度宽表_反透视」):6 行(张三三条 + 李四三条);李四 2 月金额为 0 仍要有一行(0 不是空)。
- 源表保全:「月度宽表」仍 2 行。
- 核验重点:指定列反透视;源表还在。
用例 3:指定结果名
- 测试目的:验证透视时可指定结果表名,数字与求和透视一致。
- 测试提示词:
把销售明细按地区做行、月份做列,金额求和,输出 “地区月报”。
- 预期输出结果对比:
- 结果表名:「地区月报」。
- 数字:与用例 1 相同——华东 1 月=120、2 月=80;华北 1 月=50、2 月=70。
- 核验重点:工作空间出现指定名「地区月报」,而不是默认「销售明细_透视」。
用例 4:计数
- 测试目的:验证透视格子对金额计数,而不是求和。
- 测试提示词:
把销售明细按地区做行、月份做列,对金额计数。
- 预期输出结果对比:
- 结果表:华东 1 月=2(两行明细)、2 月=1;华北 1 月=1、2 月=1。
- 核验重点:华东 1 月是 2 不是 120。
用例 5:平均
- 测试目的:验证透视格子对金额求平均。
- 测试提示词:
把销售明细按地区做行、月份做列,金额求平均。
- 预期输出结果对比:
- 结果表:华东 1 月=60((100+20)/2)、2 月=80;华北 1 月=50、2 月=70。
- 核验重点:华东 1 月是 60 不是 120。
用例 6:金额取最大
- 测试目的:验证透视格子对金额取最大,不得做成求和。
- 测试提示词:
把销售明细按地区做行、月份做列,金额取最大。
- 预期输出结果对比:
- 结果表:华东 1 月=100(不是 120)。
- 核验重点:最大不是合计;源表「销售明细」应还在。
用例 7:金额取最小
- 测试目的:验证透视格子对金额取最小(由原文用例 6「再测一条」拆出)。
- 测试提示词:
把销售明细按地区做行、月份做列,金额取最小。
- 预期输出结果对比:
- 结果表:华东 1 月=20。
- 核验重点:最小不是合计 120,也不是最大 100。
用例 8:除姓名外都竖起来
- 测试目的:验证「除姓名外」反透视与指定 1 月、2 月、3 月反透视的行集合相同。
- 测试提示词:
把月度宽表除姓名外的列反透视成月份和金额。
- 预期输出结果对比:
- 结果表:行集合与用例 2 相同——6 行(张三三条 + 李四三条);李四 2 月金额为 0 仍要有一行。
- 核验重点:除某列外与指定列反透视应对齐,不得漏列或多列。
用例 9:状态列反透视
- 测试目的:验证状态宽表按指定状态列反透视成状态和数量,工号保留。
- 测试提示词:
把 “状态宽表” 的待处理、已完成、已关闭 反透视成状态和数量。
- 预期输出结果对比:
- 结果表:2 人 × 3 状态 = 6 行;工号保留。
- 核验重点:三列状态全部竖起;源表应还在。
四、 常见测试问题与操作贴士(FAQ)
-
Q1:导入 Excel 文件后,工作空间里的表名带上了
_Sheet1(如销售明细_Sheet1),提示词该怎么写?
答:DT-Bot 具备智能表名模糊匹配能力,在提示词中直接书写销售明细或销售明细_Sheet1均可精确命中。若希望工作空间保持纯粹干净,可在本节点前接入「改表名」算子批量去掉后缀。 -
Q2:运行后源表还在,新表应该叫什么?
答:源表只读,应还在工作空间(「销售明细」仍 5 行,「月度宽表」仍 2 行)。未写结果名时,新表多为「源表名_透视」或「源表名_反透视」;写了「输出 “地区月报”」则以指定名为准。 -
Q3:连续测多条提示词时交叉表数字「对不上」?
答:上一轮结果表可能仍留在工作空间。建议删除上一轮结果表,或在测下一个用例前重新导入原始表格。 -
Q4:透视提示词必须写清什么?值为 0 的格子还要留行吗?
答:透视要写清谁做行、谁做列、格子填哪一列(以及求和 / 计数 / 平均 / 最大 / 最小)。反透视要写清收哪些列,或写「除某列外」。值为 0 不是空,李四 2 月金额为 0 仍要有一行。