把显示结果与源数据集对照,是指用计数、姓名和合计,把查询或报表与原始表格核对。在要求你证明或提供证据说明结果正确的实操任务里会用到。
本课为数据库查询与报表收尾,并用到前面四课的想法。它也支持 ICT 实操任务与证据检查器里的证据技能。
什么是可靠的检查流程?
- 在运行任何东西之前,写下任务预期的结果:哪些记录,大约多少条。
- 直接在源表中数出符合的记录。
- 运行查询,对照数量。
- 对照姓名或 ID,找出多出或缺少的记录。
- 核对一个合计,自己把源数值加起来。
- 抽查一个计算值,用手算验证。
完整例题
使用模块页面里虚构的 Harbour Hill Clubs 表。
任务:报告所有成员及 Fee 合计,按姓名排序。
**第 1 步,预期:**全部 10 条记录。源数据的费用合计:4 人 RM30 = 120,3 人 RM45 = 135,3 人 RM60 = 180,共 435。
**第 2 步,报表显示:**9 行,费用合计 375。
**第 3 步,差异:**10 - 9 = 缺 1 条记录,435 - 375 = 60。
**第 4 步,找出缺失:**缺少一位 RM60 的成员。Robotics 的 Evan、Farah 和 Jia 各付 60,逐个看姓名,发现报表里没有 Jia。
**第 5 步,原因:**一个残留的条件 Sessions > 5 仍然开着。Jia 刚好出席 5 节,所以被筛掉了。
**第 6 步,修正:**删除这个条件并重新运行。报表显示 10 行和 435。
合计直接指向一条 RM60 的记录,大大缩小了查找范围。
要避免的错误
因为结果看起来整齐,就相信它是对的:
报表显示 9 行,排得整整齐齐,于是学生交了上去。
没有任何报错,但有一条记录被筛掉了,合计少了 RM60。
改正方法是每次都做上面的流程,即使时间紧也一样。在源表里数 10 条记录只需要几秒。
自测
1. Fee >= 45 的查询应该返回多少条记录?它们的费用合计是多少?
显示答案
Fee 45:Bella、Chen、Gopal。Fee 60:Evan、Farah、Jia。共 6 条记录,合计 3 * 45 + 3 * 60 = 135 + 180 = 315。
2. Sessions > 10 的查询显示了五条记录。对吗?
显示答案
不对。多于 10 就是 11 或 12:Bella (12)、Dewi (11)、Farah (12)、Imran (12)。那是 4 条记录。Hui 刚好 10,被排除。显示五条的结果可能用了 >= 而不是 >。
3. 全体成员的平均出席节数显示为 9.2。请核对。
显示答案
总节数:8 + 12 + 9 + 11 + 7 + 12 + 6 + 10 + 12 + 5 = 92。然后 92 / 10 = 9.2。显示的数值是正确的。
接下来学什么
把五课的内容合起来,做数据库查询与报表练习题。只读 SQL 练习实验室提供内置的虚构数据库供你对照,错误记录与重测队列帮你追踪反复出现的失误。
老师可以看着你检查报表,指出你跳过的那一步,就在一对一线上 ICT 补习里。