4.4.1 预定义计算
预定义计算字段,即“总计”选项,用于对查询中的记录组或全部记录进行总和、平均值、计数、最小值、最大值等数量计算,也可以根据查询要求选择相应的分组、第一条记录、最后一条记录、表达式和条件等。
Access数据库管理系统为用户预置了“总计”选项,在查询视图中,以“总计”行通过列表框显示,包括分组,总计、平均值,最小值、最大值、计数等,具体含义如表4-14所示。
表4-14 “总计”选项
预定义计算字段标题由数据源字段及计算表达式自动生成,计算表达式由“总计”选项确定,预定义计算字段注意事项如下:
(1)可以通过“总计”的“条件”选项,设置计算字段的条件范围。
(2)可以“总计”的“分组”选项,实施对每组中的数据进行统计计算,如果没有分组,则对所有数据进行统计。
(3)可以对默认计算字段标题重命名。
(4)计算字段同数据表字段一样,也具有格式属性,设置相应的格式。
1.一级分组计算
任务4.6 创建“总分前5名查询”,显示“10市场营销1班”总分前5名的“学号”、“姓名”、“总分”。
操作步骤:
(1)打开“教学信息管理”数据库,单击“创建”选项卡→“查询”组→“查询设计”,显示“查询1”的设计视图,添加班级表、学生表和成绩表,并自动建立关系。
(2)添加字段“班级名称”、“学号”、“姓名”和“成绩”(以班级名称为条件,学号、姓名为分组,对成绩汇总)
(3)单击“查询工具/设计”上下文选项卡→“显示/隐藏”组→“汇总”,系统自动在查询字段设计视图中添加一个“总计”行,默认选项为“Group By”,单击“总计”行各字段单元格向下按钮,修改“总计”行各选项,“班级名称”为“Where”,“学号”和“姓名”为“Group By”,“成绩”为“合计”,并定义“成绩”字段“排序”为“降序”,如图4-25所示。
图4-25 设计查询字段
说明:以“学号”与“姓名”分组,实质上为同一组,因为同一学号只能一个姓名。
(4)确定查询记录显示的条数,单击“查询工具/设计”上下文选项卡→“查询设置”组→“返回”组合框下拉按钮,选择“5”,或者直接输入“5”。
(5)单击“快速工具访问栏”→“保存”按钮,弹出“另存为”对话框,输入查询名“总分前5名查询”。
(6)单击“查询工具/设计”上下文选项卡→“结果”组→“运行”,以数据表视图显示查询结果,如图4-26所示。
(7)分析与修改:“合计”列标题显示为“成绩之合计”,“成绩之合计”实际上合计列的标题,可以修改。
修改方法一
关闭查询视图,重新以设计视图打开,如图4-27所示,在合计字段列显示为:
图4-26 查询结果
成绩之总计:成绩
冒号前为计算字段的标题,冒号后为统计计算字段。直接修改为:
总分:成绩
图4-27 修改计算字段名
修改方法二
在设计视图中,选择合计列,单击“查询工具/设计”上下文选项卡→“显示/隐藏”组→“属性表”,弹出“属性表”对话框,在“常规”选项卡的“标题”文本框中输入“总分”。如图4-28所示,重新运行查询,查询数据表视图如图4-29所示。
图4-28 “属性表”对话框
图4-29 标题效果
2.二级分组计算
任务4.7 创建“班级课程平均分查询”,显示“班级名称”,“课程名称”,“平均分”。要求按“班级名称”升序,“课程名称”降序,“平均分”显示1位小数。
操作步骤:
(1)打开“教学信息管理”数据库,单击“创建”选项卡→“查询”组→“查询设计”,显示“查询1”的设计视图,添加“班级表”、“学生表”、“成绩表”和“课程表”,并自动建立关系。
(2)添加字段“班级名称”、“课程名称”和“成绩”(以“班级名称”为第1分组,“课程名”称为第2分组,对“成绩”求平均分)。
(3)单击“查询工具/设计”上下文选项卡→“显示/隐藏”组→“汇总”,系统自动在查询字段设计表中添加一个“总计”行,默认选项为“Group By”,单击“总计”行“成绩”字段单元格向下按钮,选项“平均值”选项,并按要求定义排序,如图4-30所示。
图4-30 选择总计选项
说明:以分组为统计计算范围,按指定的字段进行统计运算,先按第1字段进行第一级分组,在每一组中,再进行第二级分组。
(4)修改汇总字段标题及属性,选择“成绩”汇总字段,选择“查询工具/设计”→“显示/隐藏”组→“属性表”选项,弹出“属性表”对话框,在“常规”选项卡的“格式”组合框中选择“固定”,“小数位数”组合框中选择“1”,“标题”文本框中输入“平均分”,如图4-31所示。
说明:设置“格式”为“固定”,“小数位数”为“1”,这时,平均分按4舍5入,不足1位的补0。但平均分单元格中真实的数据还是函数的计算值,格式设置只是改变了数据显示的形式。
(5)单击“查询工具/设计”上下文选项卡→“结果”组→“运行”,查询数据表视图如图4-32所示。
(6)单击“快速访问工具栏”→“保存”按钮,弹出“另存为”对话框,输入查询名称为“班级课程平均分查询”,单击“确定”按钮。
图4-31 “属性表”对话框
图4-32 查询结果