查询设计与应用
被考次数: 13次
被考频率: 高频率
答错率:    41%
知识难度:
考试要求: 熟悉     
知识路径:  > 数据库应用基础知识  > 数据库应用基础知识  > 数据库管理系统的基本操作  > 数据库管理系统的操作方法


本知识点历年真题试卷分布
>> 试题列表    
 

 
       查询的目的是让用户根据指定条件对表或者查询进行检索,筛选出符合条件的记录,构成一个新的查询结果数据集。查询的结果也是一个数据表,可作为其他数据库操作的数据源。
       根据对数据源操作方式和结果的不同,查询可以分为5大类:选择查询、交叉表查询、操作查询、参数查询和SQL查询。为了便于理解,下面以教学数据库为例进行介绍。
       用向导创建查询
          选择查询
          选择查询可以根据指定的查询准则,从一个或多个表中获取数据并显示结果;也可以使用选择查询对记录进行分组,并且对记录进行总计、计数、平均以及其他类型的计算。
          使用“查询”向导创建查询。
          例如,在“教学”数据库的“学生”表中查询学号、姓名、性别及所在院系的操作方法:
          (1)在“教学”数据库窗口中单击“查询”对象,然后双击“使用向导创建查询”选项,屏幕上会显示“简单查询向导”的第一个对话框,如下图(a)所示。
          
          简单查询举例
          (2)在“表/查询”下拉列表中选择“学生”表,此时在“可用字段”框中显示“学生”表中包含的所有字段。分别双击“学号”、“姓名”、“性别”及“所在院系”字段,这些字段被添加到“选定的字段”框中。
          (3)单击“下一步”按钮,系统显示“简单查询向导”的第二个对话框,在“请为查询制定标题”文本框中输入查询名称(默认标题为“学生查询”)。
          (4)如果要修改查询设计,则选择“修改查询设计”单击按钮;如果要打开查询看结果,则选择“打开查询查看信息”单选按钮。选择“打开查询查看信息”单选按钮,并单击“完成”按钮。查询结果如上图(b)所示。
          交叉表查询
          交叉表查询可以计算并重新组织数据结构,这样可以更加方便地进行数据分析。交叉表查询计算数据的总计、平均值、计数或其他类型的总和,这种数据可分为两组信息:一类在数据表左侧排列,另一类在数据表的上部。数据表行和列的交叉处显示该字段的计算结果。
          在创建交叉表查询时,用户需要指定三种字段:
          (1)放在数据表最左端的行标题,它把某一字段或相关的数据放入指定的一行中。
          (2)放在数据表最上面的列标题,它对每一列指定的字段或表进行统计,并将统计结果放入该列中。
          (3)放在数据表行与列交叉位置上的字段,用户需要为该字段指定一个总计项,对于交叉表查询,用户只能指定一个总计类型的字段。
          例如,在“教学”数据库中计算学生选课的平均成绩的交叉表。使用“查询向导”创建交叉表查询的具体方法如下:
          (1)在“教学”数据库窗口中单击“查询”对象,然后单击“新建”按钮,这时屏幕上显示“新建查询”对话框,如下图(a)所示。
          
          交叉表查询示例
          (2)在该对话框中双击“交叉表查询向导”选项,系统显示“交叉表查询向导”对话框。单击“下一步”按钮,系统显示“交叉表查询向导”的第二个对话框,如上图(b)所示。
          (3)确定交叉表的行标题。行标题最多可以选择3个字段。为了在交叉表的每一行第一列显示“学号”,应双击“可用字段”框中的“学号”字段,单击“下一步”按钮,系统显示“交叉表查询向导”的第三个对话框。
          (4)确定交叉表的列标题,列标题只能选择一个字段。在交叉表的每一列上显示“课程号”,单击“下一步”按钮,系统显示“交叉表查询向导”的第四个对话框。
          (5)在该对话框中确定每个行和列的交叉处计算什么数据。例如,计算学生各课的平均成绩,应该单击“字段”框中的“成绩”字段,然后在“函数”框中单击“平均”。若不在交叉表的每行前面显示总计数,应取消对“是,包括各行小计”复选框的勾选,如上图(c)所示。然后单击“下一步”按钮,这时屏幕上显示“交叉表查询向导”的最后一个对话框。
          (6)在该对话框中给出了一个默认的查询名称“选课_交叉表”,可在“请指定查询的名称”文本框中输入其他名字,单击“查看查询”按钮,然后单击“完成”按钮,系统显示上图(d)所示的结果。
       用设计视图创建查询
          创建选择查询
          实际应用中,可以使用“设计”视图建立不带条件的查询。例如,“教学”数据库中学生、课程和选课表结构为学生(学号,姓名,性别,出生日期,所在院系,家庭住址,联系方式);课程(课程号,课程名,学分);选课(学号,课程号,成绩)。若查询信息学号、姓名、课程号、课程名和成绩,具体操作如下:
          (1)在“教学”数据库窗口中单击“查询”对象,然后双击“在设计视图中创建查询”选项,系统显示查询“设计”视图,并显示一个“显示表”对话框,如下图所示。
          
          “显示表”对话框
          (2)在“显示表”对话框中有三个选项卡:“表”、“查询”和“两者都有”,选择“表”选项卡,分别双击“学生”、“课程”和“选课”表,将它们分别添加到查询“设计”视图上半部分的窗口中,单击“关闭”按钮。
          (3)在表的“字段”框中选择“学号”、“姓名”、“课程号”、“课程名”和“成绩”字段,放在“设计网格”的字段行上。选择方法有三种:
          ①单击某字段,然后按住鼠标左键将其拖到“设计网格”中的字段行上。
          ②双击选中的字段。
          ③单击“设计网格”中字段行上要放置字段的列,然后单击右侧向下的箭头按钮,并从下拉列表中选择所需的字段。
          设置好的查询如下图(a)所示。
          
          用设计视图创建选择查询
          (4)单击工具栏上的“保存”按钮,系统显示“另存为”对话框,在“查询名称”文本框中输入“学生选课成绩”,然后单击“确定”按钮。单击工具栏上的“视图”按钮,或单击工具栏上的“运行”按钮,切换到“数据表”视图。
          此时,在“教学”数据库窗口中单击“查询”对象,双击“学生选课成绩”查询,系统显示上图(b)所示的查询结果。
          创建交叉表查询
          使用“设计”视图在“教学”数据库中创建一个交叉表查询,使其显示每名学生每门课程的成绩。具体操作方法如下:
          (1)在“教学”数据库窗口中单击“查询”对象,然后双击“在设计视图中创建查询”选项,系统显示查询“设计”视图及“显示表”对话框。
          (2)在“显示表”对话框中选择“表”选项卡,然后分别双击“学生”表、“课程”表和“选课”表,将它们添加到查询“设计”视图上半部分的窗口中,单击“关闭”按钮。
          (3)双击“学生”列表中的“姓名”字段,将其放到“字段”行的第1列,然后分别双击“课程”表中的“课程号”、“课程名”字段和“选课”表中的“成绩”字段,将它们分别放到“字段”行的第2列、第3列和第4列中。
          (4)单击工具栏上的查询类型按钮右侧的向下箭头按钮,然后从下拉列表中选择“交叉表查询”选项。
          (5)单击“姓名”字段的“交叉表”单元格,再单击该单元格右侧的向下箭头按钮,从下拉列表中选择“行标题”。单击“课程名”字段的“交叉表”单元格,再单击该单元格右侧的向下箭头按钮,从下拉列表中选择“列标题”。为了在行和列交叉处显示课程成绩,应单击“成绩”字段的“交叉表”单元格,单击该单元格右侧的向下箭头按钮,从下拉列表中选择“值”,再单击“成绩”字段的“总计”行单元格,单击右侧的向下箭头按钮,然后从下拉列表中选择相应的函数,如下图所示。
          
          查询“设计”视图中的交叉表查询
          (6)单击工具栏上的“保存”按钮,并将查询命名,然后单击“确定”按钮。单击工具栏上的“视图”按钮,或单击工具栏上的“运行”按钮切换到“数据表”视图。
       其他方式创建查询
          使用“查找重复查询向导”
          在Access中,可能需要对数据表中某些具有相同值的记录进行检索、分类。利用系统提供的“查找重复查询向导”可以快速地完成一个“查找重复项”查询。
          使用“查找重复查询向导”查询出一个或多个字段中值相同的记录,操作步骤如下:
          (1)在数据库窗口中单击“查询”对象,单击“新建”按钮,系统显示“新建查询”对话框。在“新建查询”对话框中选择“查找重复查询向导”,单击“确定”按钮,打开“查找重复查询向导”对话框,与前面的两种查询向导一样,根据需要选取查询的对象。
          (2)选取设为重复值的字段,系统会按照选取的字段自动对数据表中的记录进行检索,按照设定的字段分类检索。
          (3)选择另外查询的字段。其实,在此处选择的查询内容是用户想了解的信息,即有哪些记录具有相同的内容。
          (4)输入新建查询的标题,或者接受系统提供的默认值,并且选择生成查询之后的操作,即可以选择在“数据表”视图中打开查询查看信息或在“设计”视图中修改查询设计。单击“完成”按钮结束查询的建立。
          使用“查找不匹配查询向导”
          使用“查找不匹配查询向导”是将一个表中的某个字段的数据和另一个表中的某个字段的相同记录删除,并存储在另一张表里。例如,查询“教学”数据库中没有选课学生的学号、姓名、性别和所在院系。具体操作步骤如下:
          (1)在“教学”数据库窗口中单击“查询”对象,然后单击“新建”按钮,这时屏幕上显示“新建查询”对话框。
          (2)在“新建查询”对话框中选择“查找不匹配查询向导”后,单击“确定”按钮,打开“查找不匹配查询向导”对话框,在该对话框中确定在查询结果中含有哪张表或查询中的记录,选择“学生”表,单击“下一步”按钮。
          (3)确定哪张表或查询包含相关记录,选择“选课”表,单击“下一步”按钮。
          (4)确定两张表中都有的信息,在表中字段窗口里选择某个字段,然后在另一个表中选择某个字段。完成后,单击<=>按钮,在匹配字段里将显示匹配的字段。下图所示的“学生”表中的“学号”字段与“选课”表中的“学号”字段被设置为“匹配字段”,这两个字段的数据类型必须是相同的。
          
          选择匹配字段
          (5)选择查询结果中所需的字段:“学号”、“姓名”、“性别”和“所在院系”,单击“下一步”按钮。在下一个窗口里,可以指定查询名称,系统默认查询名称为“学生与选课不匹配”。选择“修改设计”单选按钮后,单击“完成”按钮。
          在“教学”数据库窗口中单击“查询”对象,双击“学生与选课不匹配”查询,系统将显示未选课的学生信息,如下图所示。
          
          执行“学生与选课不匹配”查询结果
       添加查询条件与使用表达式生成器
          添加查询条件
          查询条件是查询设计中的一个重要选项,反映了用户对查询的要求。在查询设计中,查询条件对应一个逻辑表达式,若表达式的值为真,则满足该条件的数据就包含在查询结果中;否则,这些数据就不包含在查询结果中。在查询设计视图中,写在“条件”栏同一行的条件之间是“与”的关系;写在不同行的条件之间是“或”的关系。
          使用表达式生成器
          (1)打开表达式生成器。
          Access在“表达式生成器”中提供了当前数据库中所有表或查询中的字段、窗体或报表中的各种控件,以及函数、常量、运算符和通用表达式,通过选择需要的数据项和运算符,可以很方便地构建任何一种表达式。
          (2)表达式生成器的符号与函数。
          
          表达式中使用的符号
          在表达式中运用的符号有数学符号和逻辑符号,以及函数表达。如上表和下表所示。
          
          常用函数格式与功能
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有