710 likes | 897 Views
第三章 查询. 内容提要. 查询概述 选择查询 在查询中计算 交叉表查询 参数查询 操作查询 SQL 查询. 一、查询概述. 查询是 Access 2003 数据库的主要对象,是 Access 2003 数据库的核心操作之一。 查询 就是以数据库中的数据作为数据源,根据给定条件从指定的数据库的表或查询中检索出符合用户要求的记录数据,形成一个新的数据集合。 查询的结果是动态的,它随着查询所依据的表或查询的数据的改动而变动 。. 查询的功能. 从一个或多个基本表中查询信息 指定准则来限制结果集中所要显示的记录 指定要在结果集中出现的字段
E N D
内容提要 • 查询概述 • 选择查询 • 在查询中计算 • 交叉表查询 • 参数查询 • 操作查询 • SQL查询
一、查询概述 • 查询是Access 2003数据库的主要对象,是Access 2003数据库的核心操作之一。 • 查询就是以数据库中的数据作为数据源,根据给定条件从指定的数据库的表或查询中检索出符合用户要求的记录数据,形成一个新的数据集合。 • 查询的结果是动态的,它随着查询所依据的表或查询的数据的改动而变动 。
查询的功能 • 从一个或多个基本表中查询信息 • 指定准则来限制结果集中所要显示的记录 • 指定要在结果集中出现的字段 • 指定结果集中记录的排序次序 • 对结果集中的记录进行数学统计 • 将结果集制成一个新的基本表 • 在结果集的基础上建立窗体和报表 • 在结果集中进行新的查询 • 查找不符合指定条件的记录 • 建立交叉表形式的结果集
查询分类 • 选择查询 • 参数查询 • 交叉表查询 • 操作查询 • SQL查询
查询视图 Access 2003的每一个查询主要有三个视图: • 设计视图 • 数据表视图 • SQL视图 三种视图可以通过工具栏上的“视图”按钮下拉列表框中的视图进行相互转换。
1、数据表视图 “数据表”视图用来显示查询的结果数据。
2、 设计视图 “设计”视图用来对查询设计进行修改。
3、 SQL 视图 “SQL”视图用来显示与“设计”视图等效的SQL语句 。
二、选择查询 “选择查询”就是从一个或多个有关系的表中将满足要求的数据选择出来,并把这些数据显示在新的查询数据表中。包括: • 简单选择查询 • 统计查询 • 重复项查询 • 不匹配查询
引例学习 • 如何使用“简单查询向导”创建单表查询或多表查询? • 如何使用“设计”视图创建单表查询或多表查询? • 怎样运行查询? • 怎样设置查询准则进行条件查询? • 如何修改查询? • 如何使用查找重复项和不匹配项查询?
建立单表查询 查询学生的基本信息,并显示学生的姓名、性别、出生日期和专业编号。
建立多表查询 查询学生的课程成绩,并显示学生的姓名、所选课程名称和考试成绩。 (该查询涉及到3个表:“学生”表、“课程”表和“学生选课”表 )
运行查询的方法 • 在数据库窗口“查询”对象下,双击要运行的查询; • 选择要运行的查询,单击“数据库”窗口工具栏上的“打开”按钮。 • 在查询“设计”视图中,单击“执行”按钮。 • 在查询“设计”视图中,单击“视图”按钮。
查询准则 • 条件查询通过“设计”视图来建立,在“设计”视图的“条件”行上输入查询准则,这样Access 2003在运行查询时,就会从指定的表中筛选出符合条件的记录。 • Access 2003中的查询准则主要有3种:运算符、函数和表达式。
查询准则练习 1. 要将“选课成绩”表中的成绩取整,可以使用______。 A. Abs([成绩]) B. Int([成绩]) C. Srq([成绩]) D. Sgn([成绩]) 2. 函数Sgn(-2)返回值是______。 A. 0 B. 1 C. -1 D. -2
3. 特殊运算符“IsNull”用于指定一个字段为______。 A. 空值 B. 空字符串 C. 缺省值 D. 特殊值 4. 返回一个值,该值是从字符表达式右侧第1个字符开始截取若干个字符的函数为______。 A. Space B. String C. Left D. Right
5. 假设某数据库表中有一个工作时间字段,查找15天前参加工作的记录的准则是______。 A. =Data( )-15 B. <Data( )-15 C. >Data( )-15 D. <=Data( )-15 6. 关于准则Like”[!北京,上海,广州]”,以下可满足条件的城市是______。 A. 北京 B. 上海 C. 广州 D. 杭州
7. 年龄在18~21岁之间的学生的设置条件可以设置为______。 A. “>18 or <21” B. “>18 and <21” C. “>18 not <21” D. “>18 like <21” 8. 返回字符表达式中值的最小值的函数为______。 A. Avg B. Count C. Max D. Min
条件查询示例 查询87年出生的女生或86年出生的男生的基本信息,并显示学生的姓名,性别,出生日期和所在班级信息
表达式生成器 在查询设计网格中,如果用户对表达式的书写规则不了解,对表达式中的操作符或要使用的函数不熟悉,可以在设计网格中的“条件”行单元格中启动“表达式生成器”
修改查询 • 编辑查询中的字段 • 添加字段 • 删除字段 • 移动字段 • 重命名字段 • 编辑查询中的数据源 • 添加表或查询 • 删除表或查询 • 排序查询的结果
创建带条件的查询 • 查找1970年出生的男教师,并显示教师姓名,性别,文化程度,职称和电话. 若查询70年以后出生的: >=#1970-1-1#
创建带条件的查询 • 查询考试成绩在70-85之间的学生学号,姓名,课程名称,考试成绩
创建带条件的查询 • 查询非团员的以上信息
重命名查询字段 在查询结果中,将“专业名称”一列的字段名称改为“所修专业情况”
查找重复项查询 查找同年、同月、同日出生的学生信息。
查找不匹配项查询 查找没有选课的学生姓名、性别及专业编号 。
三、在查询中计算 • 如何利用统计查询进行数据统计? • 怎样添加计算字段? • 怎样创建自定义查询?
数据统计 • 统计查询用于对表中的全部记录或记录组进行统计计算,包括总计,平均值,计数,求最小、最大值,标准偏差或方差。计数结果只是显示,并没有实际存储在表中。 • 统计查询的设计方法大体与前面的介绍相同,不同之处在于在查询“设计”视图的设计网格中需要加入“总计”行。
总计 • 查询也可具有分析功能,总计功能的目的就是将数据表的记录,予以组化后,再加以计算,故总计功能相当重要。 • 让总计功能出现在查询设计视图中:
计数 统计学生总人数。
平均值 统计“Access 数据库应用基础”课程的“考试成绩”平均分 。
添加计算字段 计算每个学生的“编译原理”课程的学期成绩(学期成绩=平时成绩×0.3+考试成绩×0.7)
创建自定义查询 计算“男”同学的平均年龄 。
四、交叉表查询 • 交叉表查询,就是将来源于某个表中的字段进行分组,一组列在数据表的左侧,一组列在数据表的上部,然后在数据表行与列的交叉处显示表中某个字段的各种计算值,比如,求和数、计数值、平均值、最大值等。 • 建立交叉表查询的方法有两种:使用交叉表查询向导和使用“设计”视图。