
5.2 使用查询向导创建查询
使用查询向导可以创建4种类型的查询,由于交叉表是较为高级的查询,将在5.5.2节详细介绍。本节主要介绍使用查询向导创建其他三种查询的方法。
5.2.1 简单查询
利用简单查询可以从一个或多个数据表中检索出数据,也可以对检索出的数据进行总计、计数以及求平均值等运算。下面以在“人事管理”数据库中创建“请假汇总”查询为例进行介绍。具体的操作步骤如下。
步骤1打开随书光盘中的“素材\Ch05\人事管理.accdb”文件,单击【创建】选项卡下【查询】组中的【查询向导】按钮,如图5-5所示。

图5-5 单击【查询向导】按钮
步骤2弹出【新建查询】对话框,在其中选择【简单查询向导】选项,单击【确定】按钮,如图5-6所示。

图5-6 选择【简单查询向导】选项
步骤3弹出【简单查询向导】对话框,在【表/查询】的下拉列表中选择【表:员工信息表】选项,在【可用字段】列表框中选择“员工ID”字段,单击【添加】按钮,将其添加到【选定字段】列表框中。使用同样的方法,再次添加“员工姓名”和“员工职位”字段,如图5-7所示。

图5-7 添加“员工信息表”的字段
技巧
若单击【全部添加】按钮,可将【可用字段】列表框中的字段全部添加到【选定字段】列表框中。若添加错误,单击
按钮或
按钮,可将【选定字段】列表框中的字段退回至【可用字段】列表框中。
步骤4在【表/查询】的下拉列表中选择【表:员工请假表】选项,并将“请假天数”字段添加到【选定字段】列表框中,然后单击【下一步】按钮,如图5-8所示。

图5-8 添加“员工请假表”的字段
步骤5在对话框中用户需要确定创建的查询是采用明细查询还是汇总查询,这里选中【汇总】单选按钮,并单击【汇总选项】按钮,如图5-9所示。

图5-9 单击【汇总选项】按钮
提示
明细查询可以查看选定字段的明细信息,汇总查询是对数值型字段进行统计操作,或对文本等类型的字段进行计数操作等。
步骤6弹出【汇总选项】对话框,在其中选中【汇总】复选框,并单击【确定】按钮,如图5-10所示。

图5-10 【汇总选项】对话框
步骤7返回至【简单查询向导】对话框,在其中单击【下一步】按钮,在对话框中需要为查询指定标题,这里在【请为查询指定标题】文本框中输入“请假汇总 查询”,然后单击【完成】按钮,如图5-11所示。

图5-11 指定查询的标题
步骤8此时将创建一个查询对象,并自动在数据表视图中显示出员工请假汇总的结果。至此,即完成使用查询向导创建简单查询的操作,如图5-12所示。

图5-12 简单查询的结果
提示
以上创建的查询对象是以“员工信息表”和“员工请假表”这两个表作为数据源表。此外,用户还可以单表或查询对象作为数据源来创建查询。需注意的是,当以多表作为数据源时,表之间必须建立了表关系,否则查询结果将出现多条重复记录,这一原则并不仅仅是针对简单查询,而是所有类型的查询都是如此。因此,在创建查询前,用户最好为数据库中的各个表建立表关系。
5.2.2 查找重复项查询
查找重复项查询可以帮助用户在数据表中查找具有相同内容的记录,还可以用来确认数据表中是否存在重复的记录。下面在“人事管理”数据库中,查找“员工信息表”中部门相同的员工。具体的操作步骤如下。
步骤1打开随书光盘中的“素材\Ch05\人事管理.accdb”文件,单击【创建】选项卡下【查询】组中的【查询向导】按钮,如图5-13所示。

图5-13 单击【查询向导】按钮
步骤2弹出【新建查询】对话框,在其中选择【查找重复项查询向导】选项,单击【确定】按钮,如图5-14所示。

图5-14 选择【查找重复项查询向导】选项
步骤3弹出【查找重复项查询向导】对话框,在列表框中选择【表:员工信息表】选项,单击【下一步】按钮,如图5-15所示。

图5-15 选择【表:员工信息表】选项
提示
若要以查询作为数据源,在【视图】区域中选中【查询】单选按钮,然后在列表框中选择相应的查询对象即可。
步骤4在对话框中需要确定包含重复信息的字段,这里在【可用字段】列表框中选择“部门ID”字段,单击【添加】按钮,将其添加到【重复值字段】列表框中,然后单击【下一步】按钮,如图5-16所示。

图5-16 添加“部门ID”字段
提示
若要查询部门相同的员工信息,只需查询部门ID是否相同即可。因此选择“部门ID”字段作为可能包含重复信息的字段。
步骤5在对话框中需要确定在结果中想要显示的其他字段。这里将“员工姓名”和“员工职位”字段添加到【另外的查询字段】列表框中,然后单击【下一步】按钮,如图5-17所示。

图5-17 添加“员工姓名”和“员工职位”字段
步骤6在对话框中需要为查询指定标题,这里在【请指定查询的名称】文本框中输入“查找部门相同的员工”,然后单击【完成】按钮,如图5-18所示。

图5-18 指定查询的标题
步骤7此时将创建一个查询对象,并自动在数据表视图中显示出部门相同的员工信息。至此,即完成使用查询向导创建查找重复项查询的操作,如图5-19所示。

图5-19 重复项查询的结果
5.2.3 查找不匹配项查询
查找不匹配项查询可以从指定的表中查找在另一个表中没有相关记录的数据。下面在“工资明细表”中查找与“员工信息表”不匹配的记录,具体的操作步骤如下。
步骤1打开随书光盘中的“素材\Ch05\人事管理.accdb”文件,备份“工资明细表”,建立该表的副本,然后删除该表中“员工ID”为“2017000”的所有记录。操作完成后,单击【创建】选项卡下【查询】组中的【查询向导】按钮,如图5-20所示。

图5-20 单击【查询向导】按钮
步骤2弹出【新建查询】对话框,在其中选择【查找不匹配项查询向导】选项,单击【确定】按钮,如图5-21所示。

图5-21 选择【查找不匹配项查询向导】选项
提示
由于“人事管理”数据库中的所有记录都是相匹配的,为了演示查找不匹配项查询,这里需要删除“工资明细表”中“员工ID”为“2017000”的记录。注意,在删除操作前,需对“工资明细表”进行备份,因为删除操作是不可恢复的。
步骤3弹出【查找不匹配项查询向导】对话框,在列表框中选择【表:员工信息表】选项,即查询在“员工信息表”中存在,而在下一步所选的“工资明细表”中不存在的记录。选中后,单击【下一步】按钮,如图5-22所示。

图5-22 选择【表:员工信息表】选项
步骤4 在对话框中选择【表:工资明细表】选项,单击【下一步】按钮,如图5-23所示。

图5-23 选择【表:工资明细表】选项
步骤5在对话框中选择匹配字段,这里分别选择两侧的“员工ID”字段,单击【对比】按钮,使两个字段匹配,然后单击【下一步】按钮,如图5-24所示。

图5-24 选择匹配字段
步骤6在对话框中需要选择在结果中显示的字段,这里将“员工ID”“员工姓名”“员工电话”和“员工职位”字段添加到【选定字段】列表框中,单击【下一步】按钮,如图5-25所示。

图5-25 添加在结果中显示的字段
步骤7在对话框中需要为查询指定标题,这里保持默认设置不变,单击【完成】按钮,如图5-26所示。

图5-26 指定查询的标题
步骤8此时将创建一个查询对象,并自动在数据表视图中显示出两个表中不匹配的记录。至此,即完成使用查询向导创建查找不匹配项查询的操作,如图5-27所示。

图5-27 不匹配项查询的结果