返回正文目录

分阶段与组合分析系列大纲

2026-10-25 更新。接高级建模与多维分析第 22—25 章,按 3 章,第 26—28 章组织。教学环境已升级 Launcher 0.1.42 / 项目 CLI 0.1.25,第 26、27 章原请求复跑通过;第二十八章完成实操、写作与自审,待用户审阅。

主线与环境

前面主要是在一个 QM 中表达查询。本系列处理“一个阶段的结果,还要交给下一阶段”的问题:先汇总、筛选或选定对象,再关联或继续分析。常用规则仍留在语义模型中,Compose 负责组织本次分析计划。

继续使用 Chinook 2012 年数据;不为介绍 Compose 先更换数据库。独立目录 lab/composition、Namespace chinook-composition、数据源 chinook-composition-sqlite,复用教学服务 http://127.0.0.1:18067。原库、原模型和其他 Namespace 不改,Console/FAP 不启用。

复用客户目录、账单和明细三个 QM 的语义定义,复制到独立教学 Bundle。先校验、加载,再实时获取元数据;Markdown 不预先手写。需要新字段时,创建和查询分开发送;已有字段直接使用。

Compose 使用受限脚本组织 dsl(...)、plan.query(...)、join(...)。CTE 是查询计划的组成方式,不代表每一步都把数据取回 AI,也不保证中间结果会持久化。当前 SQLite 预览已显示 WITH / 子查询及参数绑定;其他数据库不据此宣称验证通过。

第 26 章 把查询结果交给下一步:Compose 与 CTE

业务问题: 先按客户汇总年度账单,再对汇总结果继续筛选;需要客户名称或保留无账单客户时,再关联客户目录。

查询提示词示意:“按客户汇总 2012 年账单,继续筛选金额至少为 10 的客户,再带上客户名称。”

已验证基础: 汇总结果再筛选 20 位客户;客户目录 LEFT JOIN 原账单 95 行,包含 83 张账单及 12 位无当期账单客户;先汇总账单再 LEFT JOIN 客户目录为 59 行。

正文当前结果: 第二十六章已补齐“筛选后带名称”的完整请求,逐阶段为 47 → 20 → 20 位客户;入选金额 344.84,完整目录 59 位、无当期账单 12 位、空结果与未输出字段拒绝均已核对。本章 5 项执行、1 项预期拒绝通过,见实操及读者复审。本章计数与前期备课计数分开。

第 27 章 先汇总,再关联多个查询结果

业务问题: 对照每位客户的账单金额与明细金额,找出差异。

查询提示词示意:“分别按客户汇总 2012 年账单和明细,关联后核对金额差异。”

已验证基础: 两侧按客户聚合后关联得到 47 行;账单与明细总额均为 477.53,明细数量合计 447,各客户金额逐项一致。

正文当前结果: 第二十七章已完成。关联后用列内表达式计算差额,47 位客户的两侧总额均为 477.53;金额差异及双向未匹配为空。另用故意错配期间的查询验证 5 位已匹配金额差异、40 位未匹配,并反向检查。10 项执行独立核对通过,见实操、读者复审。探索时的两类派生接口边界单独保留,正文采用已通过的入口。

第 28 章 先圈选对象,再继续分析

业务问题: 先找出年度金额最高的三位客户,再分析这些客户的账单或内容分类。

查询提示词示意:“找出 2012 年金额最高的三位客户,再看他们当年的账单。”

已验证基础: 前三客户 ID 为 26、34、13,对应 7 张账单;基础输入直接排序取 Top3、派生阶段取 Top3 两种形状结果一致,预览均保留输入 LIMIT 3。

正文当前结果: 第二十八章使用账单例子,不扩展内容分类。10 项执行通过:前三客户 26、34、13 对应 7 张账单、75.36;固定这三位客户改查 2013 年,INNER JOIN 返回 1 张、8.91,LEFT JOIN 保留三位。最终截断、前三张账单、空集合及基础 TopN 等变体均已独立核对,见实操与读者复审。

实测边界与写法

首次备课为 7 项成功执行、1 项无效关联键的预期拒绝,金额与集合通过原始只读 SQLite 行及 Decimal 独立核对。第 26—28 章分别为 5、10、10 项执行,计数独立保留。当前 0.1.42 升级与回归已完成,#163 / #164 已按修复合同验收;历史证据、模型、数据库和查询源码见实操目录。

非标准文件与多源分析、语义 SQL、性能专题仍按高级篇框架分别推进。WWI 继续贯穿适用专题,在案例确实需要时引入。