假设已有如表一的“车队运输”表,有“司机、货物类别、毛重、皮重”字段。我们将以它为原始数据,通过查询对数据进行计算和统计。
表一 原始的车队运输表
司机 [color=#FFFFFF'][/color]
货物类别 毛重 皮重 [color=#FFFFFF'][/color]
李大方
[color=#FFFFFF'][/color]
其他
75.00
25.00
赵美丽
其他
75.00
25.00
张可爱
其他
150.00
50.00
赵美丽
精粉
19.70
5.40
张可爱
精粉
20.70
5.40
张可爱
精粉
20.60
5.40
张可爱
矿石
19.60
[color=#FFFFFF'][/color]
5.40
张可爱
精粉
20.60
5.40
张可爱
精粉
21.10
[color=#FFFFFF'][/color]
5.40
张可爱
矿石
21.20
5.40
李大方
精粉
[color=#FFFFFF'][/color]
17.40
5.40
[color=#FFFFFF'][/color]
赵美丽
废石
[color=#FFFFFF'][/color]
120.00
40.00
[color=#FFFFFF'][/color]
赵美丽
[color=#FFFFFF'][/color]
其他
15.00
5.00
李大方
[color=#FFFFFF'][/color]
废石
105.00
[color=#FFFFFF'][/color]
35.00
张可爱
废石
105.00
35.00
[color=#FFFFFF'][/color]
赵美丽
废石
[color=#FFFFFF'][/color]
105.00
35.00
1.用选择查询建立计算字段
2.用选择查询进行分组数据的统计
3.用交叉表查询体现一组数据的对比
4.在查询中执行计算的注意事项
1. 用选择查询建立计算字段
建一个选择查询,添加“车队运输”表,将其所有字段拖拽到设计网格中。如图一所示,只要在空白列中填写“净重:毛重-皮重”,系统会自动为“毛重”和“皮重”加上“[ ]”,表示它们是字段。把这个查询保存为“车队运输查询”。
下面的表格就是刚制作的车队运输查询,净重是自动计算的:
车队运输查询
[color=#FFFFFF'][/color]
司机 货物类别 毛重 [color=#FFFFFF'][/color]
皮重 [color=#FFFFFF'][/color]
净重 李大方
其他
75.00
25.00
50.00
[color=#FFFFFF'][/color]
李大方
其他
135.00
45.00
[color=#FFFFFF'][/color]
90.00
赵美丽
[color=#FFFFFF'][/color]
其他
75.00
[color=#FFFFFF'][/color]
25.00
50.00
[color=#FFFFFF'][/color]
张可爱
其他
150.00
50.00
100.00
赵美丽
精粉
19.70
[color=#FFFFFF'][/color]
5.40
14.30
[color=#FFFFFF'][/color]
张可爱
精粉
20.70
5.40
15.30
张可爱
精粉
20.60
5.40
[color=#FFFFFF'][/color]
15.20
张可爱
矿石
19.60
[color=#FFFFFF'][/color]
5.40
14.20
张可爱
精粉
20.60
5.40
15.20
[color=#FFFFFF'][/color]
张可爱
精粉
21.10
5.40
15.70
张可爱
[color=#FFFFFF'][/color]
矿石
[color=#FFFFFF'][/color]
21.20
5.40
[color=#FFFFFF'][/color]
15.80
李大方
精粉
[color=#FFFFFF'][/color]
17.40
5.40
12.00
赵美丽
废石
120.00
[color=#FFFFFF'][/color]
40.00
80.00
赵美丽
其他
15.00
[color=#FFFFFF'][/color]
5.00
10.00
李大方
废石
105.00
35.00
70.00
[color=#FFFFFF'][/color]
张可爱
废石
105.00
35.00
[color=#FFFFFF'][/color]
70.00
赵美丽
废石
105.00
35.00
70.00
[color=#FFFFFF'][/color]
2.用选择查询进行分组数据的计算
[color=#FFFFFF'][/color]
建立一个选择查询,添加“车队运输查询”,将其中的“司机、货物类别、净重”字段拖拽到设计网格。
单击工具栏的“总计”按钮,则设计网格中增加了总计行,再如图把司机和货物类别列的总计设置成“Group By”(保持不变即可),净重列的总计设置成“Sum”,意思就是根据司机和货物类别字段分组对净重进行总和的计算。
[color=#FFFFFF'][/color]
生成的查询效果如下表所示:
司机 货物类别 运输总量 [color=#FFFFFF'][/color]
李大方
[color=#FFFFFF'][/color]
废石
170.00
李大方
[color=#FFFFFF'][/color]
精粉
[color=#FFFFFF'][/color]
1715.40
李大方
矿石
13.50
李大方
[color=#FFFFFF'][/color]
其他
[color=#FFFFFF'][/color]
310.00
[color=#FFFFFF'][/color]
王潇洒
废石
18.50
[color=#FFFFFF'][/color]
王潇洒
精粉
922.30
[color=#FFFFFF'][/color]
王潇洒
[color=#FFFFFF'][/color]
矿石
15.90
王潇洒
其他
21.30
张可爱
[color=#FFFFFF'][/color]
废石
310.00
张可爱
[color=#FFFFFF'][/color]
精粉
[color=#FFFFFF'][/color]
1601.90
张可爱
矿石
94.20
张可爱
其他
340.00
赵美丽
[color=#FFFFFF'][/color]
废石
790.00
赵美丽
精粉
1537.40
赵美丽
矿石
21.60
赵美丽
[color=#FFFFFF'][/color]
其他
420.00 3.用交叉表查询体现一组数据的对比
新建查询,选择“交叉表查询向导”,接着选择“车队运输查询”,出现上面的对话框,从可用字段中选择“司机”字段作为行标题。单击下一步。
接着从字段中选择“货物类别”作为列标题。单击下一步。
选择“净重”字段,函数选择“求和”,最后为这个交叉表查询起一个名字,向导结束。
[color=#FFFFFF'][/color]
上图是刚生成的查询的设计视图。
[color=#FFFFFF'][/color]
下表是交叉表的查询结果,清晰地对比了每个司机运输各种货物的数量。
[color=#FFFFFF'][/color]
车队运输查询&;#8212;&;#8212;交叉表
司机 [color=#FFFFFF'][/color]
废石 精粉 矿石 [color=#FFFFFF'][/color]
其他 总计 [color=#FFFFFF'][/color]
李大方
170.00
1715.40
13.50
310.00
2208.90
王潇洒
18.50
922.30
15.90
[color=#FFFFFF'][/color]
21.30
[color=#FFFFFF'][/color]
978.00
张可爱
310.00
[color=#FFFFFF'][/color]
1601.90
94.20
340.00
[color=#FFFFFF'][/color]
2346.10
赵美丽
790.00
[color=#FFFFFF'][/color]
1537.40
21.60
420.00
[color=#FFFFFF'][/color]
2769.00
4.在查询中执行计算的注意事项
如果要在字段中显示计算的结果,可以使用 Microsoft Access 所提供的预定义计算或自定义的计算。使用所谓“总计”的预定义计算,可计算出记录组或全部 记录的下列量值:总和(Sum)、平均值(Avg)、数量(Count)、最小值(Min)、最大值(Max)、 标准偏差(StDev)或方差(Var)。可以对每个字段选择要进行的总计计算。
[color=#FFFFFF'][/color]
合计函数 Count 在计算时不能包括有空值 (Null) 的记录。例如,Count 函数返回所有 无 Null 值记录的数量。有一种方法可以对 Null 值进行计数,另外也可以将 Null 值转换为零以便进行计算。如果要查找包含 Null 值的记录总数,请在 Count 中使用用 星号 (*) 通配符。
[color=#FFFFFF'][/color]
在字段中显示计算结果时,结果实际并不存储在基准窗体中。相反,Microsoft Access 在每次执行查询时都将重新进行计算,以使计算结果永远都以数据库中最新的数据为准。因此, 不能人工更新计算结果。
[color=#FFFFFF'][/color]
在总计列中的其他值的含义:
Group By
定义要执行计算的组,将记录与指定字段中的相等值组合成单一记录。
Expression
创建表达式中包含合计函数的计算字段。通常在表达式中使用多个函数时,将创建计算字段。
Where
指定不用于分组的字段准则。如果选定这个字段选项,Microsoft Access 将清除“显示”复选框,隐藏查询结果中的这个字段。
First
指定第一个记录。
Last
指定最后一个记录。
[color=#FFFFFF'][/color]
[color=#FFFFFF'][/color]