编辑 | blame | 历史 | 原始文档

功能测试报告_同名企业1-8月累计货运量与周转量SQL_2026-09-19

一、功能说明

2025 年 1-8 月与 2026 年 1-8 月报送的企业数量不同(664 家 vs 636 家),
直接相减的差额里混着「企业名单变了」的影响。本功能按**同名企业口径**
(两年 1-8 月都报送过的企业名称交集,共 545 家)分别汇总两年 1-8 月累计的
货运量与**货物周转量**,保证两年企业范围完全一致,可直接用于同比。

  • 交付脚本:docs/生成汇总大表/同名企业_1-8月累计对比_2026-09-19.sql(含 6 条查询)
  • 数据源表:traffic_audit.h2032_enterprise_monthly(交企统H203-2表,企业级月报)
  • 关键字段:freight_total 货运量(吨)、turnover_total 货物周转量(吨公里)、
    report_period 报表期('YYYY-MM')、enterprise_name 企业名称
  • 单位换算:表内为「吨 / 吨公里」,输出统一 ÷10000 → 「万吨 / 万吨公里」
  • 期间取法:1-8 月 = report_period BETWEEN 'YYYY-01' AND 'YYYY-08'
  • 脚本内容:查询 1 汇总行 / 查询 2 逐企业对照 / 查询 3 口径对照 /
    查询 4 差异企业名单 / 查询 5 分市州汇总 / 查询 6 数据体检

二、测试环境

  • 数据库:MySQL 8.0.29,127.0.0.1:3308,库 traffic_audit
  • 客户端:mysql 5.7.41,参数 --default-character-set=utf8mb4
  • 执行方式:整脚本一次性执行 mysql ... < 同名企业_1-8月累计对比_2026-09-19.sql
  • 数据规模:report_period 共 20 个报表期(2025-01 ~ 2026-08),合计 13056 行;
    其中 1-8 月口径 10400 行(2025 年 5312 行 / 2026 年 5088 行)
  • 测试日期:2026-09-19

三、用例表

编号 类型 用例 输入 预期 实际 结论
T1 正向 同名企业口径汇总(查询 1) 两年 1-8 月都报送过的企业 一行内出两年累计数 545 家;货运量 30153.14 / 27752.68 万吨,周转量 4635340.46 / 4389882.05 万吨公里 通过
T2 正向 逐企业对照明细(查询 2) 同上 每家一行、两年并排 545 行,含两年值、增减额、同比 通过
T3 正向 明细求和 = 汇总行 查询 2 的 545 行按列求和 与查询 1 完全一致 30153.14 / 4635340.46 / 27752.68 / 4389882.05,差异 0 通过
T4 正向 口径对照(查询 3) 全量 vs 同名 4 行口径可解释差额 全量 2025:664 家 33994.45 万吨 / 5102518.95 万吨公里;全量 2026:636 家 31399.82 万吨 / 4927161.77 万吨公里 通过
T5 正向 差异企业名单(查询 4) 只在一年报送的企业 家数与差额相符 2025 独有 119 家、2026 独有 91 家;家数校验 664−545=119、636−545=91 通过
T6 正向 差异金额闭合 同名 + 独有 = 全量 金额闭合 货运量 30153.14+3841.31=33994.45(=全量 2025);周转量 4635340.46+467178.48=5102518.94(全量 5102518.95,差 0.01 为四舍五入) 通过
T7 正向 分市州汇总(查询 5) 同名企业按 region_code 归市州 市州合计 = 全省 16 个市州(仙桃 0 家同名企业),企业数合计 545,各列合计 = 查询 1 通过
T8 正向 入库抽查:逐月相加对齐 武汉钢铁集团物流有限公司 2025-01~08 共 8 条原始记录 逐月相加 = 明细行 货运量 7381512 吨 → 738.15 万吨;周转量 231191873 吨公里 → 23119.19 万吨公里,与查询 2 输出一致 通过
T9 负向 企业名不存在 enterprise_name='不存在的企业XYZ' 0 行、不报错 0 行 通过
T10 负向 年份写错 期间 '2024-01' ~ '2024-08' 0 行 0 行 通过
T11 边界 同一企业同月重复记录 GROUP BY enterprise_name, report_period HAVING COUNT(*)>1 无重复(否则累计会被放大) 0 条 通过
T12 边界 同名企业月份不全(查询 6) 记录数 <> 8 的同名企业 无异常 空结果集,545 家两年各 8 个月齐全 通过

四、发现的问题与处置

  1. 企业名称作为匹配键的固有风险(已提示,未改口径)
    同名口径按 enterprise_name 字符串相等匹配,若企业改名、或不同地市出现完全同名的企业,
    会被判为「不同企业」或「同一企业」。实测两年数据中同一报表期内无重名记录(T11),
    但跨年改名无法通过本脚本识别;如需更严谨可改用 unified_credit_code(统一社会信用代码)匹配。
  2. 同名口径与全量口径的差额已可解释
    2026 年全量比同名口径多 3647.14 万吨、少 537279.73 万吨公里(新进 91 家企业),
    2025 年全量比同名口径多 3841.31 万吨、467178.48 万吨公里(退出 119 家)。
    对外说明同比时需注明采用的口径,避免与全量口径数字对不上。
  3. 汇总行的同比小数位
    周转量同比精确值 −5.2954%,ROUND(...,2) 输出 −5.30(显示为 −5.3),
    脚本表头注释已同步修正为 −5.30%,避免与展示值不一致。
  4. region_code 取 2026 年记录
    分市州查询用 MAX(CASE WHEN report_period >= '2026-01' ...) 取 2026 年的地区代码,
    企业跨市迁移时按 2026 年归属统计,实测未发现影响(同名企业两地并存的情况无)。

五、结论

6 条查询整脚本执行通过,12 条用例(8 正向 / 2 负向 / 2 边界)全部通过。

同名企业口径(545 家)1-8 月累计结果:

指标 2025 年 1-8 月 2026 年 1-8 月 同比
货运量(万吨) 30153.14 27752.68 −7.96%
货物周转量(万吨公里) 4635340.46 4389882.05 −5.30%

其中 2026 年累计数与 2026-09-19《持续在规企业 545 家累计运距》交付件的全省行
(27752.6820 万吨 / 4389882.0468 万吨公里)完全一致,两条链路口径互证通过。