返回正文目录

第二十二章:向上查与 maxDepth 补充验证

2026-10-24。使用 Launcher 0.1.39、CLI 0.1.25,Runtime http://127.0.0.1:18067,Namespace chinook-multidim,命名数据源 chinook-multidim-sqlite。原服务未监听,按固定启动入口恢复,实际 PID 133260,已核对进程使用 0.1.39 JAR。Console/FAP 仍关闭,匿名本地测试 none-dev-test-only。

没有新建或修改 TM/QM、闭包表或业务数据。先 wait-ready、capabilities、核对绑定,再实时 describe 三个 QM;员工字段的 hierarchyOps 明确包含向上、向下操作。每条请求都先 validate,再执行同一 payload。

实际结果

查询 独立核对结果
Jane:ancestorsOf Nancy(2)、Andrew(1)
Jane:selfAndAncestorsOf 再包含 Jane(3)
Jane:向上查、maxDepth=1 Nancy(2)
Jane:包含本人向上查、maxDepth=1 Jane(3)、Nancy(2)
Jane:向上查、maxDepth=2 Nancy(2)、Andrew(1)
Andrew:向上查 / 包含本人向上查 分别为空 / 仅 Andrew(1)
不存在的 ID 999:向上查 空成员集合
Andrew:向下 maxDepth=1 / 2 分别为 2、6 / 2—8
对应 2012 年账单 分别为 0 张、SUM 空值 / 83 张、477.53

表格按关系解释成员,实际请求按 ID 排序;顺序本身不代表上下级。maxDepth 从查询起点按关系边数计算,本人距离为 0;不是 limit,也不是“返回第几层的一组人”。本例 maxDepth=2 包含第一、第二层。

另执行第 23 章三项下钻回归:Nancy 范围按人员展开,Jane 的客户分组、账单明细。Jane 对应 16 位有账单客户、28 张账单、146.60,Nancy 整个范围为 83 张、477.53。

12 项范围/层数查询、3 项下钻回归,共 15 项执行通过。 向上与向下范围均从原始 Employee.ReportsTo 在 Python 中遍历,金额以原始 Invoice/Customer 行和 Decimal 核对,不复用闭包 SQL 作答案。原模型目录、来源数据库与教学副本摘要前后相同。

图与衔接

请求与复跑

配套查询在 queries/upward-depth/,例如:

在项目根目录复跑:

python lab/checks/verify-chapter-22-upward-depth.py

验收 JSON · 最新验证目录。每次保存独立目录,包含原始 payload、校验与执行响应、退出码、实时 JSON/Markdown、启动记录与日志。原 0.1.38 初验、0.1.39 Pivot 及代表回归证据均保留,不重写旧版计数。

本轮是当前会话通过公开 CLI 的验证,未另开干净 AI 会话做提示词验收,也没有验证其他数据库或生产身份权限。