上一页下一页返回首页返回本章第5章查询5.1用向导创建查询5.2使用“设计”视图创建查询5.3SQL查询上一页下一页返回首页返回本章实训概要:通过本章实训学习,读者能够对Access2002的查询功能有一个比较具体的了解,并熟练掌握各种Access2002查询方法。Access2002的查询方式,主要有选择查询,参数查询,交叉表查询,操作查询及SQL查询。操作查询,SQL查询必须在选择查询的基础上创建,本章分别介绍各种查询的创建方法。第5章查询上一页下一页返回首页返回本章案例说明:数据库应用系统的实际应用是根据需求进行的,作为一个超市的管理者随时要了解超市商品的购销和库存等情况以帮助进行经营管理决策,Access2002中的查询功能可准确方便地做到。本章实训仍以“迷你超市业务信息管理系统”中的表为数据源,使用Access2002中的查询方法创建各种所需的查询,如“商品销售利润查询”、“商品销售情况_交叉表”、“销售业绩查询”、“商品销售_生成表”等。主要的方法有利用向导创建查询,利用“设计”视图创建查询及SQL查询,其中利用向导创建查询是最简捷的方法,但只能创建比较简单的查询,复杂的查询则需要通过“设计”视图来创建,在Access2002数据库中,每个查询的创建,在“SQL视图”中能自动生成SQL查询语句。上一页下一页返回首页返回本章5.1.1使用简单查询向导创建查询5.1用向导创建查询以“迷你超市业务信息管理系统”中所创建的数据表“商品库存情况”和“商品销售情况”为数据源,创建“商品进销价目查询”,了解商品进货及销售价目比较。操作方法:1.打开数据库文件“迷你超市业务信息管理系统”;2.在“数据库”窗口,选择“查询”为操作对象;上一页下一页返回首页返回本章3.在“数据库”窗口,按“新建”按钮,进入“新建查询”窗口,如图5.1如示;图5.1“新建查询”对话框上一页下一页返回首页返回本章4.在“新建查询”窗口,选择“简单查询向导”,单击“确定”按钮,Access2002将启动简单查询向导,并显示“简单查询向导”对话框之一,如图5.2所示;图5.2“简单查询向导”对话框之一上一页下一页返回首页返回本章5.在“简单查询向导”对话框之一中,从“表/查询”下拉列表框中选择表“商品库存情况”,然后在“可用字段”列表中选择要添加到查询中的字段,并单击“”按钮,将其添加到“选定的字段”列表框中,单击“”按钮将添加所选择表或查询的全部字段,也可直接双击所需字段;6.用同样的方法选择表“商品销售情况”表及可用的字段;7.选择完所有的字段后,单击对话框中的“下一步”,如果所选字段中没有数字类型的字段,直接进入“简单查询向导”对话框之四,如图5.6所示;上一页下一页返回首页返回本章8.如果前面所选的字段中有数字类型字段,而且该字段不是主关键字或主关键字的一部分,即会打开“简单查询向导之二”,如图5.3所示;如选择“明细(显示每个记录的每个字段)”,则最终生成的查询将显示检索到每个记录的全部字段;在“简单查询向导”对话框之二中,根据需要也可选择查询类型为“汇总”,再单击“汇总选项”按钮,打开“汇总选项”对话框,如图5.4所示,在该对话框中,可以为可计算总计的字段选择四种总计计算的方式。各种总计计算是将同组中的所有记录的相应字段按照所选择的总计类型进行计算。假如每一个分组只有一个记录,总计运算没有意义。完成后,单击“确定”按钮关闭该对话框,返回“简单查询向导”对话框之二;上一页下一页返回首页返回本章图5.3“简单查询向导”对话框之二图5.4“汇总选项”对话框上一页下一页返回首页返回本章9.并单击“下一步”按钮,打开“简单查询向导”对话框之三,如图5.5所示,在“简单查询向导”对话框之三中,确定查询中对日期进行分组的方式;图5.5“简单查询向导”之三上一页下一页返回首页返回本章10.单击“下一步”进入“简单查询向导”之四,如图5.6所示,为要创建的查询指定标题:商品进销价目查询,单击“完成”按钮结束向导的运行,完成查询的创建;图5.6“简单查询向导”之四上一页下一页返回首页返回本章11.运行“商品进销价目查询”,观察查询结果。打开表“商品库存情况”、表“商品销售情况”查询“商品进销价目查询”,对照其结果。如图5.7、图5.8、图5.9所示。图5.7“商品库存情况”表上一页下一页返回首页返回本章图5.8“商品销售情况”表上一页下一页返回首页返回本章图5.9商品进销价目查询上一页下一页返回首页返回本章使用交叉表查询可以计算并重新组织数据的结构,可以更加方便地分析数据。交叉表查询的数据可分为两组信息:一类在数据表左侧排列,另一类在数据表的顶端排列,下面我们来创建一个“商品销售情况_交叉表”实训。操作方法:1.打开数据库文件“迷你超市业务信息管理系统”;2.在“数据库”窗口,选择“查询”为操作对象;3.在“数据库”窗口,按“新建”按钮,进入“新建查询”窗口,如图5.10如示;5.1.2使用交叉表查询向导创建查询图5.10“新建查询”对话框上一页下一页返回首页返回本章4.在“新建查询”窗口,选择“交叉表查询向导”,单击“确定”按钮,Access2002将启动简单查询向导,并显示“交叉表查询向导”对话框之一,如图5.11所示,在此选定需要使用的表,此例选择“商品销售情况”表;图5.11“交叉表查询向导”对话框之一上一页下一页返回首页返回本章5.单击“下一步”按钮,出现如图5.12所示的对话框中,在“交叉表查询向导”对话框之二中,从“可用字段”列表中选择作为行标题的字段“商品编号”、“商品名称”,单击“”按钮将其添加到“选定字段”列表中,单击“下一步”按钮,打开“交叉表向导”对话框之三,如图5.13所示;图5.12“交叉表查询向导”对话框之二上一页下一页返回首页返回本章图5.13“交叉表查询向导”对话框之三上一页下一页返回首页返回本章图5.14“交叉表查询向导”对话框之四6.在“交叉表查询表向导”对话框之三中,在“字段”列表中选择作为标题的字段“销售人员”,单击“下一步”按钮,打开“交叉表向导”之对话框之四,如图5.14所示;7.在“交叉表向导”对话框之四的“字段”列表中选择要计算交叉点的字段“销售数量”,在右侧“函数”的选项中选择“求和”;上一页下一页返回首页返回本章图5.15“交叉表查询向导”对话框之五8.单击“下一步”按钮,打开“交叉表查询向导”对话框之五,如图5.15所示,在“请指定查询的名称”文本框中输入交叉表查询的名称“商品销售情况_交叉表”,单击“完成”按钮结束向导的运行,打开刚刚创建的“商品销售情况_交叉表”,如图5.16所示,查看运行结果。上一页下一页返回首页返回本章图5.16“商品销售情况_交叉表”注意:在使用“交叉表查询向导”建立交叉表时,它所基于的字段必须属于同一个“表”或“查询”中,如果不一个“表”或“查询”中,则必须先建立一个查询,将它们放在一起。上一页下一页返回首页返回本章当需要在表或查询中查找具有重复字段值的记录时,可以用重复项查询向导。下面我们创建一个商品销售情况中有重复项记录的查询。操作内容:1.打开数据库文件“迷你超市业务信息管理系统”;2.在“数据库”窗口,选择“查询”为操作对象;3.在“数据库”窗口,按“新建”按钮,进入“新建查询”窗口,如图5.17如示;5.1.3查找重复项查询向导图5.17“新建查询”对话框上一页下一页返回首页返回本章4.在“新建查询”窗口,选择“查找重复项查询向导”,单击“确定”按钮,Access2002将启动查找重复项查询向导,并显示“查找重复项查询向导”对话框之一,如图5.18所示;图5.18“查找重复项查询向导”对话框之一上一页下一页返回首页返回本章5.在“查找重复项查询向导”对话框之一中,选择要查找的表“商品销售情况”,单击“下一步”按钮,打开“查找重复项查询向导”对话框之二,如图5.19所示;图5.19“查找重复项查询向导”对话框之二上一页下一页返回首页返回本章6.在“查找重复项查询向导”对话框之二中,选择要查找重复值的字段,这里选择“商品名称”,单击“下一步”按钮,打开“查找重复项查询向导”对话框之三,如图5.20所示;图5.20“查找重复项查询向导”对话框之三上一页下一页返回首页返回本章7.在“查找重复项查询向导”对话框之三中选择除重复字段外的其他字段,在此我们选择“销售单价”、“销售数量”、“销售日期”、“销售人员”,单击“下一步”按钮,打开“查找重复项查询向导”对话框之四,如图5.21所示;图5.21“查找重复项查询向导”对话框之四上一页下一页返回首页返回本章8.在“查找重复项查询向导”对话框之四中,在“请指定查询的名称”文本框中输入查询的名称“查找商品销售情况的重复项”,单击完成,结束向导的运行并打开刚建成的查询,如图5.22所示。图5.22“查找商品销售情况的重复项”上一页下一页返回首页返回本章不匹配查询可以在一个表中搜索在另一个表中没有相关记录的记录行,下面我们创建一个“商品库存情况与商品销售情况不匹配”来查询没有销售记录的商品。操作方法:1.打开数据库文件“迷你超市业务信息管理系统”;2.在“数据库”窗口,选择“查询”为操作对象;3.在“数据库”窗口,按“新建”按钮,进入“新建查询”窗口,如图5.23如示;图5.23“新建查询”对话框5.1.4查找不匹配项查询向导上一页下一页返回首页返回本章4.在“新建查询”窗口,选择“查找不匹配项查询向导”,单击“确定”按钮,Access2002将启动查找不匹配项查询向导,并显示“查找不匹配项查询向导”对话框之一,如图5.24所示;图5.24“查找不匹配项查询向导”对话框之一上一页下一页返回首页返回本章5.在“查找不匹配项查询向导”对话框之一中选择要查找的表或查询,这儿我们选择“商品库存情况”表,单击“下一步”按钮,打开“查找不匹配项查询向导”对话框之二,如图5.25所示;图5.25“查找不匹配项查询向导”对话框之二上一页下一页返回首页返回本章6.在“查找不匹配项查询向导”对话框之二中选择要查找包含相关记录的表或查询,这儿我们选择“商品销售情况”表,单击“下一步”按钮,打开“查找不匹配项查询向导”对话框之三,如图5.26所示;5.26“查找不匹配项查询向导”对话框之三上一页下一页返回首页返回本章7.在“查找不匹配项查询向导”对话框之三中选择两个表中都存在的字段“商品编号”,单击“下一步”按钮,打开“查找不匹配项查询向导”对话框之四,如图5.27所示;图5.27“查找不匹配项查询向导”对话框之四上一页下一页返回首页返回本章8.在“查找不匹配项查询向导”对话框之四中选择查询结果中将要出现的字段,单击“下一步”按钮,打开“查找不匹配项查询向导”对话框之五,如图5.28所示,在“指定输入查询名称”下面的文本框中输入查询名称“商品库存情况与商品销售情况不匹配”,单击“完成”按钮结束向导的运行并打开刚刚创建的不匹配查询,如图5.29所示。通过上述所创建的查找找不匹配查询,我们可以查找没有出售的商品记录。上一页下一页返回首页返回本章图5.28“查找不匹配项查询向导”对话框之五图5.29“商品库存情况与商品销售情况不匹配”浏览视图上一页下一页返回首页返回本章5.2.1创建选择查询5.2使用“设计”视图创建查询使用查询向导可以快速地创建一个查询,可是能实现的功能比较单一,不能完全满足我们的要求,所用的字段也只是从数据源中直接选择,对于复杂的查询只有在“设计”视图中才能做出来,也可以用“设计”视图修改用向导创建的查询。选择查询主要用来浏览、检索、统计数据库的数据,下面我们使用“设计”视图,创建“销售业绩查询”和“销售利润查询”。操作一创建“销售业绩查询”操作方法:1.打开数据库文件“迷你超市业务信息管理系统”;2.在“数据库”窗口,选择“查询”为操作对象;上一页下一页返回首页返回本章3.在“数据库”窗口,按“新建”按钮,进入“新建查询”窗口,如图5.30如示,选择“设计视图,单击“确定”,打开“显示表”对话框,如图5.31所示;图5.30“