第3章-查询的设计与使用.ppt
《第3章-查询的设计与使用.ppt》由会员分享,可在线阅读,更多相关《第3章-查询的设计与使用.ppt(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、查询的设计与使用(第查询的设计与使用(第3 3章)章)主编:潘明寒主编:潘明寒主编:潘明寒主编:潘明寒ACCESS程序设计教程程序设计教程 ACCESS程序设计教程程序设计教程l建立各种类型的查询建立各种类型的查询建立各种类型的查询建立各种类型的查询l建立计算字段建立计算字段建立计算字段建立计算字段l使用统计函数使用统计函数使用统计函数使用统计函数lSQLSQL语句与子查询语句与子查询语句与子查询语句与子查询本章要点:本章要点:ACCESS程序设计教程程序设计教程l查询是数据库的重要对象;查询是数据库的重要对象;查询是数据库的重要对象;查询是数据库的重要对象;l是处理和分析数据的工具;是处理和
2、分析数据的工具;是处理和分析数据的工具;是处理和分析数据的工具;l能从多个表中抽取数据,供用户查看、统计和能从多个表中抽取数据,供用户查看、统计和能从多个表中抽取数据,供用户查看、统计和能从多个表中抽取数据,供用户查看、统计和分析。分析。分析。分析。3.1 查询概述查询概述 ACCESS程序设计教程程序设计教程l l查询对象是操作的集合查询对象是操作的集合查询对象是操作的集合查询对象是操作的集合,查询的结果以工作表的形式显示;查询的结果以工作表的形式显示;查询的结果以工作表的形式显示;查询的结果以工作表的形式显示;l l该表与基本表有非常相似的外观,但并不是一个基本表,该表与基本表有非常相似的
3、外观,但并不是一个基本表,该表与基本表有非常相似的外观,但并不是一个基本表,该表与基本表有非常相似的外观,但并不是一个基本表,而是符合查而是符合查而是符合查而是符合查询条件的记录集合询条件的记录集合询条件的记录集合询条件的记录集合;l l查询中显示的数据源自一个或多个数据表、或已存在的查询,其内容查询中显示的数据源自一个或多个数据表、或已存在的查询,其内容查询中显示的数据源自一个或多个数据表、或已存在的查询,其内容查询中显示的数据源自一个或多个数据表、或已存在的查询,其内容是动态的,在符合查询条件的前提下,它的内容随着基本表而变化。是动态的,在符合查询条件的前提下,它的内容随着基本表而变化。是
4、动态的,在符合查询条件的前提下,它的内容随着基本表而变化。是动态的,在符合查询条件的前提下,它的内容随着基本表而变化。3.1.1 认识查询对象认识查询对象ACCESS程序设计教程程序设计教程3.1.2 查询的设计视图查询的设计视图l l建立和修改查询在查询的设计视图中完成,在设计视图中确定查询的建立和修改查询在查询的设计视图中完成,在设计视图中确定查询的字段和条件。字段和条件。l l查询的查询的设计视图设计视图窗口分上下两部分:窗口分上下两部分:上半部分是上半部分是“字段列表字段列表字段列表字段列表”区区区区,放,放置查询的数据源。置查询的数据源。下半部分是下半部分是“设计网格设计网格设计网格
5、设计网格”区区区区,放置在查询中显示的,放置在查询中显示的字段和在查询中做条件的字段。字段和在查询中做条件的字段。上半部分上半部分上半部分上半部分下半部分下半部分下半部分下半部分ACCESS程序设计教程程序设计教程3.1.2 查询的设计视图查询的设计视图l 设计网格中的行设计网格中的行 ACCESS程序设计教程程序设计教程3.1.2 查询的设计视图查询的设计视图l 设计视图中的工具按钮设计视图中的工具按钮 ACCESS程序设计教程程序设计教程3.1.3 用查询向导建立查询用查询向导建立查询 l用查询向导可以建立简单查询,但无法设置查询条件。用查询向导可以建立简单查询,但无法设置查询条件。ACC
6、ESS程序设计教程程序设计教程3.1.4 用设计视图建立查询用设计视图建立查询 l 复杂查询在查询的设计视图中建立,如:设置查询条件、生成计算字段等。复杂查询在查询的设计视图中建立,如:设置查询条件、生成计算字段等。(1)分别将“姓名”、“性别”、“年龄”字段拖入设计网格区,在“年龄”字段的“条件”行输入条件:20。(2)给查询命名为“年龄大于20的查询”,“视图”菜单“数据表视图”,显示查询结果。ACCESS程序设计教程程序设计教程l查询对象有5类:选择查询、交叉表查询、操作查询、参数查询、选择查询、交叉表查询、操作查询、参数查询、SQLSQL查询。查询。l其中操作查询又包括4种:生成表查询
7、、更新查询、追加查询、删除查询。生成表查询、更新查询、追加查询、删除查询。3.1.5 查询对象的基本类型查询对象的基本类型 ACCESS程序设计教程程序设计教程3.1.6 查询的功能查询的功能 利用查询可以实现许多功能,主要有以下几个方面:利用查询可以实现许多功能,主要有以下几个方面:利用查询可以实现许多功能,主要有以下几个方面:利用查询可以实现许多功能,主要有以下几个方面:1.1.1.1.从一个或多个数据源中选择字段。从一个或多个数据源中选择字段。从一个或多个数据源中选择字段。从一个或多个数据源中选择字段。2.2.2.2.按照一个或多个条件选择记录。按照一个或多个条件选择记录。按照一个或多个
8、条件选择记录。按照一个或多个条件选择记录。3.3.3.3.利用函数和表达式建立计算字段。利用函数和表达式建立计算字段。利用函数和表达式建立计算字段。利用函数和表达式建立计算字段。4.4.4.4.添加、修改、删除、更新记录。添加、修改、删除、更新记录。添加、修改、删除、更新记录。添加、修改、删除、更新记录。5.5.5.5.利用查询得到的结果建立新表。利用查询得到的结果建立新表。利用查询得到的结果建立新表。利用查询得到的结果建立新表。6.6.6.6.为窗体、报表或数据访问页提供数据源。为窗体、报表或数据访问页提供数据源。为窗体、报表或数据访问页提供数据源。为窗体、报表或数据访问页提供数据源。ACC
9、ESS程序设计教程程序设计教程3.2 选择查询选择查询 选择查询是最常用的查询,主要在查询设计视图中进行,对记录选择查询是最常用的查询,主要在查询设计视图中进行,对记录的大多数查询操作都可以用选择查询完成。的大多数查询操作都可以用选择查询完成。3.2.1 “3.2.1 “总计总计总计总计”选项选项选项选项 l统计操作是选择查询的重要内容,包括计数、求和、求平均值、求最大值、求最小值等查询内容。l单击工具栏的按钮,在设计网格中显示“总计”行,统计操作在“总计”行定义。单击“总计”行的向下箭头,显示系统提供的所有总计项。ACCESS程序设计教程程序设计教程总计项总计项总计项总计项 3.2.1 总计
10、选项总计选项 ACCESS程序设计教程程序设计教程统计函数统计函数统计函数统计函数1 1sumsum函数,对数字型表达式求和。函数,对数字型表达式求和。函数,对数字型表达式求和。函数,对数字型表达式求和。格式:格式:格式:格式:sum(sum(数字型表达式数字型表达式数字型表达式数字型表达式),),如:如:如:如:sum(sum(工资工资工资工资+奖金奖金奖金奖金)2 2avgavg函数,对数字型表达式求和。函数,对数字型表达式求和。函数,对数字型表达式求和。函数,对数字型表达式求和。格式:格式:格式:格式:avgavg(数字型表达式数字型表达式数字型表达式数字型表达式),如:,如:,如:,如
11、:avgavg(奖金奖金奖金奖金)3 3countcount函数函数函数函数,对表达式统计个数。对表达式统计个数。对表达式统计个数。对表达式统计个数。格式:格式:格式:格式:count(count(表达式表达式表达式表达式),),如:如:如:如:count(count(编号编号编号编号)4 4maxmax函数,求数字型表达式的最大值。函数,求数字型表达式的最大值。函数,求数字型表达式的最大值。函数,求数字型表达式的最大值。格式:格式:格式:格式:max(max(数字型表达式数字型表达式数字型表达式数字型表达式),如:,如:,如:,如:max(max(奖金奖金奖金奖金)5 5minmin函数,求
12、数字型表达式的最小值。函数,求数字型表达式的最小值。函数,求数字型表达式的最小值。函数,求数字型表达式的最小值。格式:格式:格式:格式:min(min(数字型表达式数字型表达式数字型表达式数字型表达式),如:,如:,如:,如:min(min(年龄年龄年龄年龄)3.2.1 总计选项总计选项 ACCESS程序设计教程程序设计教程3.2.2 以多个表为数据源建立查询以多个表为数据源建立查询 多表查询l l多表查询就是从多个表中检索相关的信息,并把相关的数多表查询就是从多个表中检索相关的信息,并把相关的数据在一个视图显示出来;据在一个视图显示出来;l l优点在于能将多个表或查询中的数据集合在一起,或对
13、多优点在于能将多个表或查询中的数据集合在一起,或对多个表或查询中的数据执行操作。个表或查询中的数据执行操作。ACCESS程序设计教程程序设计教程3.2.2 以多个表为数据源建立查询以多个表为数据源建立查询说明:说明:l l将多个表或查询添加到查询中时,须确定它们的字段列表互相联接在一将多个表或查询添加到查询中时,须确定它们的字段列表互相联接在一将多个表或查询添加到查询中时,须确定它们的字段列表互相联接在一将多个表或查询添加到查询中时,须确定它们的字段列表互相联接在一起,这样才知道如何连接彼此之间的信息。起,这样才知道如何连接彼此之间的信息。起,这样才知道如何连接彼此之间的信息。起,这样才知道如
14、何连接彼此之间的信息。l l没有建立关系没有建立关系没有建立关系没有建立关系:如果添加到查询中的如果添加到查询中的如果添加到查询中的如果添加到查询中的两个表都含有一个相同数据类型或兼两个表都含有一个相同数据类型或兼容数据类型的字段,并且这两个连接字段中有一个是主键或唯一索引容数据类型的字段,并且这两个连接字段中有一个是主键或唯一索引,AccessAccessAccessAccess将自动为其创建联接。将自动为其创建联接。将自动为其创建联接。将自动为其创建联接。l l如果已经建立了表之间的关系,在查询中添加相关表时,如果已经建立了表之间的关系,在查询中添加相关表时,如果已经建立了表之间的关系,在
15、查询中添加相关表时,如果已经建立了表之间的关系,在查询中添加相关表时,Access Access Access Access 将自动将自动将自动将自动在在在在“设计设计设计设计”视图中显示连接线。视图中显示连接线。视图中显示连接线。视图中显示连接线。l l如果实施了参照完整性,还将在联接线上显示如果实施了参照完整性,还将在联接线上显示如果实施了参照完整性,还将在联接线上显示如果实施了参照完整性,还将在联接线上显示“1”1”1”1”和和和和“无穷大无穷大无穷大无穷大”符号符号符号符号 以指示一对多关系中的以指示一对多关系中的以指示一对多关系中的以指示一对多关系中的“一一一一”方和方和方和方和“多
16、多多多”方。方。方。方。ACCESS程序设计教程程序设计教程例例例例3.33.3:以“教师”表和“工资”表为数据源建立名为“工资1”的查询,显示“姓名”、“性别”、“基本工资”3个字段,并按“基本工资”字段的值降序排序。两个表的两个表的两个表的两个表的“教师编号教师编号教师编号教师编号”字段字段字段字段 连接连接连接连接ACCESS程序设计教程程序设计教程3.2.3 设置查询条件设置查询条件 l查询条件是一个表达式,定义了条件的查询只显示满足条件的记录。查询条件是一个表达式,定义了条件的查询只显示满足条件的记录。l如果定义了如果定义了2 2个查询条件,并且都写在设计网格区的个查询条件,并且都写
17、在设计网格区的“条件条件”行中,行中,说明对说明对2 2个条件做个条件做“与与”操作。操作。l如果如果2 2个查询条件分别写在设计网格区的个查询条件分别写在设计网格区的“条件条件”行和行和“或或”行,说行,说明对明对2 2个条件做个条件做“或或”操作。操作。ACCESS程序设计教程程序设计教程3.2.3 设置查询条件设置查询条件 同一个查询条件可以用不同的表达式描述:同一个查询条件可以用不同的表达式描述:同一个查询条件可以用不同的表达式描述:同一个查询条件可以用不同的表达式描述:(1)在“姓名”字段中查找“姓李”的记录。1.Left(姓名,1)=李 2.Like 李*(2)在“备注”字段中查找
18、“有绘画爱好”的记录。1.Like*绘画*2.instr(备注,绘画)0ACCESS程序设计教程程序设计教程3.2.3 设置查询条件设置查询条件(4)在“入学日期”字段中查找“不为空”的记录。表达式:is not null(5)在“婚否”字段中查找“已婚”的记录。表达式:=true(6)在“姓名”字段中查找“姓名是张三或李四”的记录。表达式:“张三”or“李四”(3)在“工作时间”字段中查找“年份是2000年”的记录。1:=#2000-1-1#and=#2000-12-31#2:between#2000-1-1#and#2000-12-31#3:year(工作时间)=2000ACCESS程序设
19、计教程程序设计教程例例3.43.4 student表中显示学校历年来招收的学生名单,有家长身份证号的是在读学生,已毕业学生的家长身份证号一栏为空。建立名为“校友”的查询,按身份证号码找出家长是本校校友的学生,输出学生身份证号、学生姓名及家长姓名。3.2.4 以查询为数据源建立查询以查询为数据源建立查询 ACCESS程序设计教程程序设计教程uu建立建立“家长家长”查询,显示家长的身份证号为空的学生姓名和身份证查询,显示家长的身份证号为空的学生姓名和身份证号。号。3.2.4 以查询为数据源建立查询以查询为数据源建立查询 分析:先分别查找学生和家长,然后以分析:先分别查找学生和家长,然后以分析:先分
20、别查找学生和家长,然后以分析:先分别查找学生和家长,然后以2 2个查询为数据源得到最终查询。个查询为数据源得到最终查询。个查询为数据源得到最终查询。个查询为数据源得到最终查询。ACCESS程序设计教程程序设计教程uu以以以以studentstudent表为源建立查询表为源建立查询表为源建立查询表为源建立查询放入放入放入放入“身份证号身份证号身份证号身份证号”、“姓名姓名姓名姓名”、“家长身份证号家长身份证号家长身份证号家长身份证号”3 3个字段个字段个字段个字段给给给给“家长身份家长身份家长身份家长身份证号证号证号证号”字段定义条件:字段定义条件:字段定义条件:字段定义条件:is not nu
21、llis not null(该字段值不空的(该字段值不空的(该字段值不空的(该字段值不空的是学生)是学生)是学生)是学生)以以以以“学生学生学生学生”为名保存查询。为名保存查询。为名保存查询。为名保存查询。3.2.4 以查询为数据源建立查询以查询为数据源建立查询 ACCESS程序设计教程程序设计教程uu以以以以“家长家长家长家长”查询和查询和查询和查询和“学生学生学生学生”查询为数据源建立查询查询为数据源建立查询查询为数据源建立查询查询为数据源建立查询在在在在“家长家长家长家长”的的的的“身份证号身份证号身份证号身份证号”字段与字段与字段与字段与“学生学生学生学生”的的的的“家长身份证号家长身
22、份证号家长身份证号家长身份证号”字段之间建立连字段之间建立连字段之间建立连字段之间建立连线。线。线。线。说明:说明:说明:说明:在字段前面添加字符串和冒号,该字符串成为新的字段名。3.2.4 以查询为数据源建立查询以查询为数据源建立查询 ACCESS程序设计教程程序设计教程l查询结果查询结果 3.2.4 以查询为数据源建立查询以查询为数据源建立查询 ACCESS程序设计教程程序设计教程3.2.5 在查询中建立自定义计算字段在查询中建立自定义计算字段 l数据表中是基本字段,不包含推导字段和计算字段。数据表中是基本字段,不包含推导字段和计算字段。l推导字段和计算字段可以在查询中创建。推导字段和计算
23、字段可以在查询中创建。p建立计算字段:建立计算字段:在字段中写出新的字段名和字段表达式即可。在字段中写出新的字段名和字段表达式即可。p表达式由运算符和操作数构成,操作数可以是字段名(变量)、表达式由运算符和操作数构成,操作数可以是字段名(变量)、常量、函数值。常量、函数值。p表达式中的字段用一对方括号括起。表达式中的字段用一对方括号括起。ACCESS程序设计教程程序设计教程3.2.5 在查询中建立自定义计算字段在查询中建立自定义计算字段 例例例例3.5 3.5:以“教师”表和“工资”表为数据源建立“工资发放”查询,新建自定义计算字段“扣除”和“实发”。“扣除”字段的计算方法为:基本工资*5%,
24、“实发”字段的计算方法为:基本工资+奖金-扣除,得数显示2位小数。查询显示字段为:教师编号、姓名、基本工资、奖金、扣除、实发。计算字段计算字段计算字段计算字段ACCESS程序设计教程程序设计教程l l查询结果为:查询结果为:查询结果为:查询结果为:3.2.5 在查询中建立自定义计算字段在查询中建立自定义计算字段 ACCESS程序设计教程程序设计教程3.2.6 在查询中建立预定义计算字段在查询中建立预定义计算字段 l预定义计算字段是用“总计”操作产生的字段,“总计”操作是系统提供的对全体记录或记录组进行的计算,返回字段的统计值,包括:总计、平均值、最大值、计数等。l显示统计函数的方法:单击工具栏
25、中的【总计】按钮,则会显示出总计行;单击单元格中的下拉按钮。总计行总计行总计行总计行ACCESS程序设计教程程序设计教程3.2.6 在查询中建立预定义计算字段在查询中建立预定义计算字段 统计查询结果统计查询结果ACCESS程序设计教程程序设计教程3.2.7 在查询中进行分组统计在查询中进行分组统计 l如果需要在查询中对记录进行分类计算,可以用分组统计功能实现。l首先选定用于分组的字段,然后在该字段的“总计”行选“分组”。例例3.7:以以“教师教师”表为数据源建立名为表为数据源建立名为“各系职工人数各系职工人数”的查询,统计各系职工人数,显示字段为:系别、人的查询,统计各系职工人数,显示字段为:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 查询 设计 使用
限制150内