计算机数据库(经济会计类)六讲数据查询随堂讲义_第1页
计算机数据库(经济会计类)六讲数据查询随堂讲义_第2页
计算机数据库(经济会计类)六讲数据查询随堂讲义_第3页
计算机数据库(经济会计类)六讲数据查询随堂讲义_第4页
计算机数据库(经济会计类)六讲数据查询随堂讲义_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章第六章 数据查询数据查询 建立数据库的目的是使用其中的数据,从这个建立数据库的目的是使用其中的数据,从这个角度来说,数据的查询过程就是使用数据的过程。角度来说,数据的查询过程就是使用数据的过程。 查询的过程就是从数据库的一张或多张表或其查询的过程就是从数据库的一张或多张表或其它数据源中抽出若干行和列组成一张新数据表的过它数据源中抽出若干行和列组成一张新数据表的过程。程。 (查询被定义成查询被定义成 “视图视图”,即数据库三,即数据库三层构架中的外模式层构架中的外模式) 本章主要介绍本章主要介绍Access所提供的各种查询方法。所提供的各种查询方法。6.1 查询概述查询概述 利用查询可以对

2、数据表进行检索,筛选出符合利用查询可以对数据表进行检索,筛选出符合条件的记录,构成一个新的数据集合,方便用户对条件的记录,构成一个新的数据集合,方便用户对数据库进行查看和分析。数据库进行查看和分析。 查询也可看作数据表,只不过它是以其它数据查询也可看作数据表,只不过它是以其它数据表为数据来源的导出表。当使用查询时,需要运行表为数据来源的导出表。当使用查询时,需要运行查询命令,此时由数据库管理系统临时抽取并计算查询命令,此时由数据库管理系统临时抽取并计算查询结果,并以数据表的方式显现给用户。查询结果,并以数据表的方式显现给用户。6.1 查询概述查询概述 查询不仅可以根据用户要求或条件检索数据,查

3、询不仅可以根据用户要求或条件检索数据,还可进行分类、汇总和统计,计算出想要的数据。还可进行分类、汇总和统计,计算出想要的数据。查询分类查询分类生成表查询生成表查询交叉表查询交叉表查询追加查询追加查询更新查询更新查询删除查询删除查询选择查询选择查询 在在Access中创建查询的方法有以下几种:中创建查询的方法有以下几种: (1) 使用查询向导创建查询。使用查询向导创建查询。 (2) 使用设计视图创建查询。使用设计视图创建查询。 (3) 使用使用SQL语言创建查询。语言创建查询。 事实上创建查询一般是前两种方法结合使用。事实上创建查询一般是前两种方法结合使用。第三种使用第三种使用SQL语言可创建所

4、有类型的查询,但需语言可创建所有类型的查询,但需要对要对SQL语言有较好的掌握。语言有较好的掌握。6.2 创建与维护查询创建与维护查询 6.2.1 使用查询向导创建查询:使用查询向导创建查询: 1. 使用使用“简单查询向导简单查询向导”的方法:的方法: 选择选择“查询查询”作为操作对象。作为操作对象。 选择选择“查询向导查询向导”选项(左下图对话框),确认后打开选项(左下图对话框),确认后打开右下图对话框,选择数据源及相应的字段,继续右下图对话框,选择数据源及相应的字段,继续“下一步下一步”。 如果选择如果选择“打开查询查看信息打开查询查看信息”,则查询结,则查询结果以数据表形式显示,如果选择

5、果以数据表形式显示,如果选择“修改查询设计修改查询设计”,则进入查询设计视图,可对查询进行修改。则进入查询设计视图,可对查询进行修改。 例例6.1 在学生信息管理系在学生信息管理系统中要查询学生所在班级、学统中要查询学生所在班级、学号、姓名、专业和所在系名等号、姓名、专业和所在系名等信息,用简单查询向导完成查信息,用简单查询向导完成查询的创建,并给出查询结果。询的创建,并给出查询结果。 学生表:学号、姓名学生表:学号、姓名 班级表:班级名称、专业班级表:班级名称、专业 系表:系名称系表:系名称 2. 使用使用“查找重复项查询向导查找重复项查询向导” 根据根据该该向导创建的查询结果,可以确定在表

6、中向导创建的查询结果,可以确定在表中是否有重复的记录,或确定记录的某个字段是否取是否有重复的记录,或确定记录的某个字段是否取相同的值。相同的值。 例如,可以搜索例如,可以搜索“姓名姓名”字段中的重复值来确定学生字段中的重复值来确定学生表表中是否有重名的记录。中是否有重名的记录。若无重名则查找结果为空记录。若无重名则查找结果为空记录。 例例6.2 查找选修两门课程以上的同学的所有课程和成绩。查找选修两门课程以上的同学的所有课程和成绩。 题目的要求可以看作在选课表中进行学号相同的重复项题目的要求可以看作在选课表中进行学号相同的重复项查询。即查找学号相同的学生学号、课程编号和成绩字段。查询。即查找学

7、号相同的学生学号、课程编号和成绩字段。 其操作步骤如下:其操作步骤如下: 查询操作,选择查询操作,选择“查找重复项查询向导查找重复项查询向导”选项,打开选项,打开“查找重复项查询向导查找重复项查询向导”对话框。对话框。选择选择“选课选课”表表后点击后点击“下一步下一步”按钮按钮。 选选“学号学号”作为重复值字段,并点击作为重复值字段,并点击“下一步下一步”按钮。按钮。 此时,系统提示要用户选择其它要查询的字段,对话框格此时,系统提示要用户选择其它要查询的字段,对话框格式见右图。在此选择式见右图。在此选择“课程编号课程编号”和和“成绩成绩”字段并点击字段并点击“下一步下一步”按钮。按钮。 系统给

8、出填写查询名称、选择系统给出填写查询名称、选择“查看结果查看结果”或或“修改设修改设计计”的选项。在此选择查看结果。的选项。在此选择查看结果。 说明:只有一个学号的记录将不显示,而采用简单向说明:只有一个学号的记录将不显示,而采用简单向导查询时会全部显示。导查询时会全部显示。 3. 使用使用“查找不匹配项查询向导查找不匹配项查询向导” 该查询向导的作用是在一个表中找出另一个表该查询向导的作用是在一个表中找出另一个表中所没有的相关记录。中所没有的相关记录。 在具有一对多关系的两个数据表中,对于在具有一对多关系的两个数据表中,对于“一一”方表中的每一条记录,在方表中的每一条记录,在“多多”方表中可

9、能有一条方表中可能有一条或多条甚至没有记录与之对应,使用不匹配项查询或多条甚至没有记录与之对应,使用不匹配项查询向导,可以查找出那些在向导,可以查找出那些在“多多”方中没有对应记录方中没有对应记录的的“一一”方数据表中的记录。方数据表中的记录。 例例6.3 查询所有没有学生选修过的课程的信息。查询所有没有学生选修过的课程的信息。 题目的要求可以看作在题目的要求可以看作在“课程课程”表与表与“选课选课”表中查找不匹配项,显示课程的所有字段信息。其表中查找不匹配项,显示课程的所有字段信息。其操作步骤如下:操作步骤如下: 查询操作,查询操作,选择选择“查找不匹配项查询向导查找不匹配项查询向导”选项,

10、打开选项,打开相应的相应的对话框。从中选择对话框。从中选择“表:课程表:课程”作为第一张要比较作为第一张要比较的表,并点击的表,并点击“下一步下一步”按钮。按钮。 此时系统要求输入第二张要比较的表,在对话框中输此时系统要求输入第二张要比较的表,在对话框中输入入“表:选课表:选课”,并点击,并点击“下一步下一步”按钮。按钮。 选择选择“课程编号课程编号”作为两张表匹配的字段,并点击作为两张表匹配的字段,并点击“下一步下一步”按钮。按钮。系统提示输入查询结果中所需显示的字段,选择所有字段,系统提示输入查询结果中所需显示的字段,选择所有字段,然后点击然后点击“下一步下一步”按钮。按钮。4. 交叉表查

11、询交叉表查询(略略) 查询结果中的课程均未被选查询结果中的课程均未被选修过修过。6.2.2 使用设计视图创建查询:使用设计视图创建查询: 设计视图是设计视图是Access给出的一种综合查询方法,给出的一种综合查询方法,可直接用此方法创建和修改查询,也可利用各种向可直接用此方法创建和修改查询,也可利用各种向导创建查询后再利用设计视图进行修改。导创建查询后再利用设计视图进行修改。 查询设计视查询设计视图界面主要包含图界面主要包含两个窗格两个窗格:查询设计窗格查询设计窗格表表/查询显示窗格查询显示窗格 1. 建立简单查询建立简单查询 例例6.4 对学生表按对学生表按“出生年月出生年月”进行排序。进行

12、排序。 打开查询设计视图的添加表窗口,选择打开查询设计视图的添加表窗口,选择“学生学生”表,点表,点击击“添加添加”按钮,再点击按钮,再点击“关闭关闭”按钮关闭添加数据源对话按钮关闭添加数据源对话框,进入字段操作对话框。框,进入字段操作对话框。 选择所有要显示的字段,在出生年月字段上点击选择所有要显示的字段,在出生年月字段上点击“排序排序”行,选择行,选择“升序升序”或或“降序降序”。最后点击工具栏中的运行按。最后点击工具栏中的运行按钮,显示结果。钮,显示结果。 2. 多表查询多表查询 利用设计视图,可从多个数据源抽取数据并显利用设计视图,可从多个数据源抽取数据并显示,一般称之为多表查询或连接

13、查询。示,一般称之为多表查询或连接查询。 例例6.5 显示每个显示每个学生的姓名、所在学生的姓名、所在班级名、专业等信班级名、专业等信息。息。 操 作 步 骤 与 单操 作 步 骤 与 单表查询基本相同,表查询基本相同,只是在选择数据源只是在选择数据源时需要选择学生和时需要选择学生和班级两张表。班级两张表。 3. 参数查询参数查询 在执行查询时,在对话框中输入指定参数,即在执行查询时,在对话框中输入指定参数,即可查询与该参数相关的所有记录(不显示其他记可查询与该参数相关的所有记录(不显示其他记录),这种查询称为参数式查询。参数查询每次依录),这种查询称为参数式查询。参数查询每次依据输入不同得到

14、不同结果。据输入不同得到不同结果。 例例6.6 建立查询,要求可依据输入生成不同籍贯建立查询,要求可依据输入生成不同籍贯的学生信息。的学生信息。 首先打开设计视图,选择首先打开设计视图,选择“学生学生”表,点击表,点击“添加添加”按钮,再点击按钮,再点击“关闭关闭”按钮关闭对话框。按钮关闭对话框。 在窗口的查询菜单中选择在窗口的查询菜单中选择“参数参数”项,或在查询窗口中项,或在查询窗口中右击快捷菜单上选择右击快捷菜单上选择“参数参数”,可进入,可进入“查询参数查询参数”窗口。窗口。输入输入“参数名称参数名称”,确定,确定“参数类型参数类型”,再按,再按“确定确定”按钮按钮返回查询设计窗体。此

15、时在字段中选择籍贯字段,在其条件返回查询设计窗体。此时在字段中选择籍贯字段,在其条件行中输入条件行中输入条件=d1 完成查询设计。完成查询设计。运行查询:在对话框中运行查询:在对话框中输入输入“广东广东”,则显,则显示所有籍贯是广东的学示所有籍贯是广东的学生。生。 4. 总计查询总计查询 总计查询可以对表中的记录进行求总计查询可以对表中的记录进行求和、求平均值等操作。进行汇总查询时,和、求平均值等操作。进行汇总查询时,可以通过菜单可以通过菜单“视图视图”的的“总计总计”命令命令调出调出“总计总计”行,在总计行中选择汇总行,在总计行中选择汇总函数进行汇总操作。函数进行汇总操作。 例例6.7 统计

16、选课表中每位同学的各科成绩平均分。统计选课表中每位同学的各科成绩平均分。 (1) 打开设计视图建立新的查询。打开设计视图建立新的查询。 (2) 选择选课表作为查询的数据源。选择选课表作为查询的数据源。 (3) 通过菜单通过菜单“视图视图”下的下的“总计总计”项调出项调出“总计总计”行。行。 (4) 在查询设计窗格中依次选择学号和成绩两个字段,在查询设计窗格中依次选择学号和成绩两个字段,设定其可显示在结果中。设置学号字段为分组依据,成绩字设定其可显示在结果中。设置学号字段为分组依据,成绩字段的总计函数选择平均值,执行查询。段的总计函数选择平均值,执行查询。 查询条件,主要用来筛选出符合条件的记录

17、。查询条件,主要用来筛选出符合条件的记录。 查询条件的设置:查询条件的设置: 1. 字段值等于某个值字段值等于某个值 用于设置查找字段等于某特定值的查询。用于设置查找字段等于某特定值的查询。 例如例如: (“=”号可省略号可省略) 成绩:成绩: =50 籍贯:籍贯: = 广东广东 出生年月:出生年月:=#1980-10-15#6.3 查询条件查询条件 例例6.8 查找选课表中的所有成绩为查找选课表中的所有成绩为80分的记录。分的记录。 操作步骤如下:操作步骤如下: 打开设计视图创建打开设计视图创建查询。选定选课表为数查询。选定选课表为数据源,在查询设计窗格据源,在查询设计窗格中依次选择学号、课

18、程中依次选择学号、课程编号和成绩三个字段,编号和成绩三个字段,在成绩字段的条件框中在成绩字段的条件框中输入数字输入数字80。执行查询。执行查询。 2. 字段值在某个范围内字段值在某个范围内 在相应字段的条件框中输入在相应字段的条件框中输入“between 下限值下限值 and 上限值上限值”,执行查询,则数据表中显示字段值,执行查询,则数据表中显示字段值在设定范围内的记录。在设定范围内的记录。 例例6.9 查找查找“选课选课”表中的所有分数在表中的所有分数在80分到分到90分之间的记录分之间的记录 操作步骤同上,在成绩字段的条件框中输入:操作步骤同上,在成绩字段的条件框中输入: between

19、 80 and 90 执行查询。执行查询。 3. 字段值的模糊查找字段值的模糊查找 用于在查询条件中设置查找字段值的一部分等用于在查询条件中设置查找字段值的一部分等于某个特定值或格式上满足特定条件的记录。于某个特定值或格式上满足特定条件的记录。 例如需要查找姓刘的学生,查找例如需要查找姓刘的学生,查找90后的,查找教后的,查找教授或副教授职称的教师等。授或副教授职称的教师等。 姓刘的可用姓刘的可用like 刘刘* 90后的可用后的可用=#1990-1-1#=#1990-1-1# and =#1999-12-31#and = #1980-1-1# and = #1989-12-31# 或或 be

20、tween #1980-1-1# and #1989-12-31# (2) 查询姓刘且姓名只有两个字的学生查询姓刘且姓名只有两个字的学生 在学生表姓名字段条件框中输入:在学生表姓名字段条件框中输入: 刘刘? 或或 Like 刘刘? (3) 籍贯为广东或广西的学生籍贯为广东或广西的学生 在在“学生学生”表籍贯字段条件框中输入:表籍贯字段条件框中输入: 广东广东 并在籍贯字段或一行中输入:并在籍贯字段或一行中输入: 广西广西 (4) 职称为副教授的女教师职称为副教授的女教师 在在“教师教师”表中性别字段的条件框中输入:表中性别字段的条件框中输入: 女女 并在职称字段的条件框中输入:并在职称字段的条

21、件框中输入: 副教授副教授 (5) 07级学生(学号最初级学生(学号最初2位为位为“07”) 在在“学生学生”表学号段条件框中输入:表学号段条件框中输入: 07* 在查询中执行计算在查询中执行计算: 数据表中数据是原始数据,而实际应用中很可能不直接数据表中数据是原始数据,而实际应用中很可能不直接使用这些数据,而是使用通过一定计算得到的数据。使用这些数据,而是使用通过一定计算得到的数据。 在在Access的查询中可以执行许多类型的计算。的查询中可以执行许多类型的计算。 Access将运算分为两类:将运算分为两类: (1) 预定义计算预定义计算 预定义计算即所谓的预定义计算即所谓的“总计总计”计算

22、,是系统提供的用于计算,是系统提供的用于对查询中的记录组或全部记录进行的计算,它包括总和、平对查询中的记录组或全部记录进行的计算,它包括总和、平均值、计数、最小值、最大值等计算方法。均值、计数、最小值、最大值等计算方法。 例如,可以计算学生成绩平均分,统计上某门课的学生例如,可以计算学生成绩平均分,统计上某门课的学生人数,依据基本工资、扣税等项目计算应发工资等。人数,依据基本工资、扣税等项目计算应发工资等。 (2) 自定义计算自定义计算 自定义计算可以用一个或多个字段的数据进行自定义计算可以用一个或多个字段的数据进行数值、日期和文本计算。这种计算需要用户输入自数值、日期和文本计算。这种计算需要

23、用户输入自定义计算的表达式,操作相对复杂,但功能更强大。定义计算的表达式,操作相对复杂,但功能更强大。(可增加计算字段可增加计算字段) 例例6.13 在在“学生学生”表中查看学生年龄,显示学表中查看学生年龄,显示学生姓名、性别、籍贯信息。生姓名、性别、籍贯信息。 此查询设计步骤如下:此查询设计步骤如下: (1) 创建查询,并选择学生表为查询数据源。创建查询,并选择学生表为查询数据源。 (2) 在查询设计窗格中依次选择姓名、性别、籍在查询设计窗格中依次选择姓名、性别、籍贯 三 个 字 段 。 在 第 四 个 字 段 位 置 输 入 表 达 式贯 三 个 字 段 。 在 第 四 个 字 段 位 置

24、 输 入 表 达 式“year(date()-year(出生年月出生年月)”,系统自动存储,系统自动存储“表达式表达式1:year(date()-year(出生年月出生年月)”。点击工。点击工具栏中的查询运行按钮可显示查询结果。具栏中的查询运行按钮可显示查询结果。 动作查询也称操作查询,它可以对数据库中一动作查询也称操作查询,它可以对数据库中一组选定记录的字段值进行修改。动作查询可划分为组选定记录的字段值进行修改。动作查询可划分为四种类型:四种类型:6.4 动作查询的设计动作查询的设计 动作查询动作查询(操作查询操作查询)追加查询追加查询更新查询更新查询删除查询删除查询生成表查询生成表查询 1

25、. 追加查询追加查询 可以将一个或多个表中的一组记录添加到另一可以将一个或多个表中的一组记录添加到另一张表或多张表的尾部。张表或多张表的尾部。 例例6.14 假设系统中另有一张名为假设系统中另有一张名为“学生学生B”的表,的表,其模式为:学生其模式为:学生B(学号学号(文本文本,6),姓名,姓名(文本文本,8),由,由“学生学生”表向其中增加所有记录。表向其中增加所有记录。 字段名相同的对应取数据;字段名相同的对应取数据; “学生学生B ”表中不存在的字段忽略。表中不存在的字段忽略。 2. 更新查询更新查询 更新查询就是对一个或者多个数据表中的一组更新查询就是对一个或者多个数据表中的一组记录做

26、全局的更改。记录做全局的更改。 例如全体员工工资上浮例如全体员工工资上浮5%等。等。 对全体或部分满足条件的记录进行修改,可使对全体或部分满足条件的记录进行修改,可使用更新操作完成。用更新操作完成。 例例6.15 将学生表中所有班级编号为将学生表中所有班级编号为 “110” 的的学生的班级编号修改为学生的班级编号修改为 “112”。 (1) 打开设计视图创建查询,并选择学生表打开设计视图创建查询,并选择学生表 。 (2) 在查询菜单下选择在查询菜单下选择 “更新查询更新查询” 。 (3) 选择班级编号字段,并在此列选择班级编号字段,并在此列“条件条件:”行输行输入入“110”,“更新到更新到:”一行输入一行输入“112” 。 (4) 执行此查询,完成更新操作。执行此查询,完成更新操作。 例例: 将所有选修了课程编号为将所有选修了课程编号为 “03001” 的学生的学生成绩减成绩减5分。分。 3. 删除查询删除查询 将符合删除条件的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论