返回正文目录

AI 数据分析入门练习题

这些练习使用 Chinook v1.4.5 SQLite 样例,分为基础查询、指标复核和 AI 问数三组。前两组可以用 SQL 练习;第三组用于语义模型和答疑讨论,需要先建立可查询模型。练习题已编写,尚未逐题生成参考答案或执行 Foggy 查询。

数据入口:本地 SQLite 文件。公开下载入口为 Chinook v1.4.5。使用副本做练习,附带原始许可。

数据和口径

基础查询

题号 问题 检查重点
1 2012 年每月账单金额和账单数是多少 日期分组,账单粒度;确认是否需要补齐零账单月份
2 2012 年账单金额最高的五个客户是谁 先按客户汇总,再排序;同额时使用客户 ID 稳定排序
3 2012 年各账单国家的金额占比是多少 使用 BillingCountry;分母与分子使用同一时期和过滤范围
4 2012 年各内容分类的明细金额和销售数量是多少 正确关联 Genre、Track、InvoiceLine、Invoice;在明细粒度求和

指标与结果复核

题号 问题 检查重点
5 2012 年平均每张账单金额是多少 总金额除账单数,区分账单均额与明细行均额
6 全部账单金额是否等于全部明细金额 对账后再按 InvoiceId 查差异,使用相同范围和小数处理
7 为什么 Invoice 与 InvoiceLine 关联后,SUM Invoice.Total 会变大 识别一对多 JOIN 引起的重复累计,提出正确聚合顺序
8 2012 年 11 月相较 10 月的账单金额变化是多少 差额与变化率分开表达;基期为零时说明变化率不可按普通除法计算

AI 问数与语义模型

题号 用户提问 讨论目标
9 销售下降了吗 先明确对比期间和金额口径;样例是历史数据,不能默认使用当前月份
10 哪个内容分类利润最高 指出样例缺少成本,先讨论需要增加什么数据和指标定义
11 下个月收入一定会恢复吗 区分已有事实查询与预测任务;不能把样例事实当作预测证据
12 按类型的汇总结果和客户排名能一起说明什么 说明两种切分的共同统计范围,区分观察到的变化与因果结论

每题保存问题、模型或 SQL、时间范围、字段映射、结果和核对方式。AI 表述与结构化结果不一致时,先定位问题出在理解、模型、查询还是结果解释。

已核对的样例基线

本次以只读方式检查原始数据库,得到以下基线,供确认所用副本一致:

项目 值
表数量 11
Customer 行数 59
Invoice 行数 412
InvoiceLine 行数 2240
Track 行数 3503
最早账单日期 2009 年 1 月 1 日
最晚账单日期 2013 年 12 月 22 日
全部 Invoice.Total 合计 2328.60
全部 InvoiceLine.UnitPrice × Quantity 合计 2328.60

以上是数据文件的只读核对结果,不代表 12 道练习的全部参考答案,也不代表 Foggy 模型已经建立。