返回正文目录第二十六章读者复审
2026-10-24。已完成完整请求的实际执行与独立核对,再按首次接触 Compose 的读者顺序复审。
主线与精简
- 从单 QM 查询过渡到“阶段结果交给下一步”,先用客户年度金额解释目的,再介绍 API。开头明确小例子也能用 having 完成,不把 Compose 写成普通汇总的必选方案。
- 准备只复用既有语义定义与独立 Namespace,不重讲安装、源码建模或 Chinook 的基础业务口径。准备提示词与查询提示词分开。
- 正文只放一份完整 fsscript。阶段流程图只表达依赖,结果表负责行数与金额;各阶段探针、完整响应及生成 SQL 放实操记录。
- 解释两次 slice 所处的数据阶段、输入列与别名,再讲 Compose 与 SQL CTE 的关系。脚本构造查询计划,不暗示 AI 下载结果再拼接,也不保证临时表或中间结果物化。
- 复审时将“保留无账单客户”移为独立小节,避免混在字段校验小节中。明确该问题改为完整目录 LEFT JOIN 未加金额门槛的年度汇总,不继承前一个问题的 20 人筛选。
- 提示词保留三条:准备模型、主查询、保留全部客户;没有把字段清单、接口或验收脚本塞进提示词。
- 结尾列出实际讲解的 Foggy 知识点,再引向第二十七章的两侧聚合核对;不提前展开 TopN、多源和性能。
验证与限度
Launcher 0.1.39 / CLI 0.1.25,在现有本地教学 Runtime 的 chinook-composition Namespace 实测。5 项正常请求均 validate → preview → execute,通过原始客户/账单行与 Decimal 独立比对;1 项后续引用未输出字段,在校验阶段明确拒绝,未执行。
年度汇总为 47 位客户 / 477.53,门槛筛选及带姓名均为 20 位 / 344.84;完整目录 LEFT JOIN 为 59 位,其中 12 位无当期账单;门槛 1000 返回空结果。中文元数据和外文姓名保持原值。
正文完整代码与实际执行文件一致,样例结果、阶段数值、代码围栏、本地链接及请求摘要已核对。原始数据库、基础篇模型和当前教学模型/数据未改;本轮没有新发现的引擎 BUG。
实际由当前 Codex 会话调用公开 CLI,没有另开干净 AI 会话只凭正文提示词验收。未验证其他数据库或本章之外的 Compose 组合。
正文 · 实操记录 · 验收报告
再次整体复审
按用户要求复审后进入第二十七章。本次仅调整文字,完整请求、模型和数据不变,沿用既有验收,没有重复执行全部查询。
- 将阶段字段规则移到代码后就近讲解:是本次投影输出别名,不是重命名 QM 的原字段;未输出日期不会自动传递。
- 压缩 CTE 段落,区分语义计划与 SQL 组织方式,指出脚本变量与引擎生成的 CTE 名处在不同层;不暗示中间结果必然物化。
- 去掉后面重复的字段规则,保留错误示例及修正方向;原有创建/查询分离、空结果和保留无账单客户的顺序不变。
- 缩短准备与主查询提示词,不增加参数、字段清单或手工 SQL。
复审结论:概念与衔接清楚,无需重写结构,可按计划继续。正文代码与实际执行文件再次比对。