收藏 分享(赏)

第4章查询.ppt

上传人:kpmy5893 文档编号:8464635 上传时间:2019-06-29 格式:PPT 页数:62 大小:1.66MB
下载 相关 举报
第4章查询.ppt_第1页
第1页 / 共62页
第4章查询.ppt_第2页
第2页 / 共62页
第4章查询.ppt_第3页
第3页 / 共62页
第4章查询.ppt_第4页
第4页 / 共62页
第4章查询.ppt_第5页
第5页 / 共62页
点击查看更多>>
资源描述

1、第四章 查询,查询是关系数据库中的一个重要概念,查询对象不是数据的集合,而是操作的集合。可以这样理解,查询是针对数据表中数据源的操作命令。每次打开查询,就相当于重新按条件进行查询。在Access数据库中,查询是一种统计和分析数据的工作,是对数据库中的数据进行分类、筛选、添加、删除和修改。,应用Access的查询对象是实现关系数据库查询操作的主要方法,借助于为查询对象提供的可视化工具,可以很方便地进行对象的创建、修改和运行,,4.1 查询概述,选择字段:选择表中的部分字段组成新的数据集。 选择记录:选择满足条件的记录组成新的数据集。 编辑记录:添加、修改和删除记录。 实现计算:分类统计或创建计算

2、字段。 建立新表:把查询结果保存为表对象。 作为数据源:为窗体、报表或数据访问也提供数据,功 能,选择查询:这种查询检索满足特定条件的数据。从一个或多个表中获取数据并显示结果。 操作查询:对数据表或查询中的记录进行(删除、追加、更新)操作生成新的查询。 参数查询:在其他查询中增加了可变化的参数。 交叉表查询:交叉表查询用于产生采用垂直方式对记录进行分组汇总的查询结果。 SQL查询:这种查询需要一些特定的SQL命令,这些命令必须写在SQL视图中(SQL查询不能使用设计视图)。,类 型,4.2 选择查询的创建,使用查询向导创建查询,查询设计器,三种视图:设计视图、数据表视图、SQL视图 两种打开方

3、式:新建查询、打开已有查询,使用查询设计视图,查询设计器工具栏,视图窗口切换,显示范围,增加统计运算,显示可选数据源,运行,查询类型选择,创建新对象,切换到数据库窗口,表达式生成器,属性窗口,新建查询,确定查询输出:选择数据源(表或查询);选定字段 查询字段的操作:逐个加入字段;一次加入所有字段;插入字段;删除字段;改变字段顺序 链接表与查询:在已有查询中,添加或删除表;设置表间的连接属性,条件查询,条件,在设计视图中,在要设置查询条件的字段的“条件”网格中直接键入条件,或用表达式生成器来创建“条件表达式”条件必须是一个合法的VBA关系或逻辑表达式。,条件表达式,将标识符、数据、运算符连接在一

4、起的式子叫表达式。,1、标识符:在对象引用中用到的符号。 例: 学生!姓名Debug.Print x,y 2、运算符 算术运算符:+、-、*、/ 逻辑运算符:and、not、or 条件运算符:between、like、not、in、Null 通配符:?、*、#、字符表、!字符表,条件设定,多个条件的查询,在多个条件网格中输入表达式时,根据要求会用到and或or运算符来组合查询条件。 同一个条件行的几个字段上的条件是逻辑与(and)组合 不同行上的条件是逻辑或(or)组合,4.3 在查询中进行计算,在条件查询的表达式中可以运用各种运算手段。统计运算是最常用的,且统计运算一般是在指定了关于某个字段

5、分组(group by)的前提下,单击工具栏上的总计按钮 ,设计视图上显示“总计”行,系统默认所有的字段都是分组字段 选定一个作为分组的字段 设定其余字段的显示(计算)方式,预定义计算,分类汇总计算-预定义计算,关于非分组字段的运算,分类汇总计算-自定义计算,自定义计算,统计中的计数,查询中计算的应用-自定义计算,自定义字段查询就是新创建字段查询。 方法是:将表达式直接输入到查询设计网格中的“字段”格中。格式:自定义标题:自定义表达式,查询中计算的应用-自定义计算,自定义计算每个学生的各科总评成绩,4.4 各种查询设计,1、交叉表查询:是一种特殊的查询,它的显示来自表中某个字段的统计结果,是一

6、个动态集,该统计结果是关于另外两个字段(行字段、列字段)的分类显示。,行字段(行标题):显示在动态集的最左端(分组依据),它是把与与某一字段或者记录相关的数据放入指定的一行(与行标题字段值同行)以便进行概括 列字段(列标题):另一个分组依据,位于动态集的顶端 值字段(统计数据显示):是用户选择的在交叉表中显示的值的字段,用户需要对这个字段指定一种统计类型,交叉表向导,交叉表查询所对应的设计视图,在使用查询设计器创建交叉表查询时,需选择查询菜单中的“交叉表查询”项,以便在设计视图中增加“交叉表”行。,最多可以有三个行字段,用交叉表查询统计格班男女生人数,2、参数查询,在执行查询之前,系统要求输入

7、参数以便根据参数自动设定查询规则。,基本方法:在设计视图的“条件”栏的相应字段(条件限定字段)的对应网格中,输入条件表达式。把条件表达式中对应的参数设定部分用“由以一对方括符包含的提示信息”替代。,例一,例二,通过“查询参数”设置窗口,可以设置参数的数据类型,关于交叉表的参数查询,交叉表的参数查询与一般的参数查询略有区别,3、 操作查询,操作查询不仅可以搜索、显示数据库,还可以对数据库进行动态的修改。根据功能的不同,可将操作查询分为以下四种: 生成表查询 更新查询 追加查询 删除查询,生成表查询,查询只是一个操作的集合,其运行的结果是一个动态数据集。当查询运行结束时,该动态数据集合是不会为Ac

8、cess所保存的。如果希望查询所形成的动态数据集能够被固定的保存下来,就需要使用生成表查询了。,步骤: 1、设计合适的选择查询 2、将其指定为生成表查询 3、指定新生成表的名称,设计完成一个生成表查询后,就可以打开运行它。与打开一般查询的情况不同,Access并不显示查询数据表视图,而是在数据库中新建了一个数据表对象,其中的数据即为生成表查询运行的结果。,更新查询,如果需要对数据表中的某些数据进行有规律地成批更新替换操作,就可以使用更新查询来实现。,步骤: 、创建一个选择查询,指定其数据源为需要更新其中数据的表对象 、将其中需要更新数据的字段和作为更新条件的字段逐一拖曳至查询设计视图的“字段”

9、行中 、选择“更新查询”,查询设计视图中新增一个“更新到”行 、在“更新到”行中填入数据更新规则,完成设计后,单击视图按钮,可以查看要更新的字段的值。 运行更新查询并不显示查询数据表视图,运行结果是根据指定的更新条件与计算更新规则,在数据库中更新了数据源表中相关字段的数据。 所以更新查询意在数据更新,没有查询结果视图输出,注意:“更新到”项和“条件”项是可以关于同一字段、也可以关于不同字段的,追加查询,利用追加查询可以实现对原数据库表进行追加记录的操作,它提供了一个不用到表中就可以增加记录的方法。,步骤: 、创建一个选择查询,其数据源为需要从中筛选出追加记录的表对象。 、将其中需要追加到另一个

10、表对象中的字段逐一拖曳至查询设计视图的“字段”行中 、选择“追加查询”,指定目标表(被追加记录的表),查询设计视图中新增一个“追加到”行 、在“追加到”行中逐个输入需要追加数据的表对象中的对应字段名,完成设计后,单击视图按钮,可以查看要追加表的原有记录。 运行该查询,数据源表中的相关数据就追加到指定的数据表中的对应字段中去了。,删除查询,如果需要从数据库的某一个数据表中有规律地成批删除一些记录,可以使用删除查询。,步骤: 1、创建一个选择查询,其数据源为需要从中删除记录的表对象 2、将其中需要作为删除准则使用的字段逐一拖曳至查询设计视图的“字段”行中 3、选择“删除查询”,即可以看到在查询设计

11、视图中新增一个“删除”行,该行中填有“Where”字样 4、在“删除”行下端的“条件”行中输入删除条件,如果被删除记录的表和数据库中别的表之间建立了“级联删除相关记录”的“参照完整性”规则,则相关表中的相关记录也随之删除。,例一,例三,例二,例四,重复项、不匹配项查询,查询有一门以上不及格的学生的名单,查询期末成绩有一门以上不及格的学生的名单,该查询向导实际上完成了一个带统计运算的查询设计,不匹配查询,不匹配查询,4.5 SQL查询,SQL是Structure Query Language的缩写,即“结构化查询语言” 。SQL是目前使用最为广泛的关系数据库查询语言,是成为关系型数据库环境下的标

12、准查询语言。SQL既可以作为独立的语言供终端用户联机使用,也可以作为宿主型语言嵌入某种高级程序设计语言中使用。,SQL语言按功能可划分为4个部分,怎样建立SQL查询,1、数据定义查询-CREATE语句,CREATE TABLE (列级完整性约束条件,列级完整性约束条件),;,新建一个表。,2、数据定义查询-DROP语句,DROP TABLE ; DROP INDEX ;,删除数据库中现有的表或索引。,3、数据定义查询-ALTER语句,ALTER TABLE ADD 完整性约束DROP ALTER COLUMN ;,修改已用 CREATE TABLE 语句创建的表的设计。,4、查询语句-SELE

13、CT,SELECT ALL|DISTINCT, FROM , WHERE GROUP BY HAVING ORDER BY ASC|DESC;,用于对数据库的查询输出,简单查询:,子句介绍:from,From 子句是select语句最主要的子句,它指定查询输出的数据源。当涉及一个以上的数据源时,要指定表间的联接方式。,INNER JOINON 等值联接 RIGHT JOINON 右联接 LEFT JOINON 左联接,ON子句后面跟着联接条件,如: 表A.主键=表B.外键,子句介绍:where,where 子句用来表示查询的条件(算术运算符、逻辑运算符等组成的表达式,可以包含BETWEEN、I

14、N、LIKE和各种统计函数 ),对应关系运算中的选择运算。,子句介绍:order by,top,返回出现在由 ORDER BY 子句指定的起始和结束范围内的一定数量的记录。,SELECT TOP integer| TOP integer PERCENT , FROM ORDER BY;,子句介绍:distinct,DISTINCT是从查询输出的集合中删除指定字段重复的行,子句介绍:group by,Group by子句的意义是指定分组字段。在设定分组条件的前提下,可以指定其他非分组字段的统计运算形式,经常用到的是求某些字段的平均值、总计、记录的计数等。,5、数据操纵语句INSERT,INSER

15、T INTO (属性列1,属性列2,.) VALUES (常量1,常量2,.),将一个或多个记录添加到表中。该语句称为追加查询。,6、数据操纵语句UPDATE,创建一个更新查询,以便基于特定的条件更改指定表的字段值。,UPDATE SET =,= WHERE ;,7、数据操纵语句DELETE,创建一个删除查询,以便基于特定的条件删除指定元组。,DELETE FORM WHERE ;,8、数据控制语句GRANT,GRANT privilege, privilege, ON TABLE table | OBJECT object|CONTAINER container TO authorizati

16、onname, authorizationname, ,对指定用户授予权限,9、数据控制语句REVOKE,撤销现有用户或组所拥有的指定权限。,REVOKE privilege, privilege, ON TABLE table | OBJECT object|CONTAINER container FROM authorizationname, authorizationname, ,SQL的几种特定查询,联合查询,使用UNION子句可以连接两个SELECT语句,结果集是两个或两个以上select语句所选择记录的集合。,传递查询,Access传递查询可直接将命令发送到ODBC数据库服务器。使用传递查询,可以直接使用其它数据库管理系统中的表。 ODBC(open database conectivity),它是一种数据库访问的工业标准,即数据库互访的接口,这个接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代码访问不同的数据库管理系统。,数据定义查询,可以创建、删除、更改表,也可以为表创建索引。,嵌套查询(子查询),将一个查询块嵌套在另一个查询块的where子句或having短语的条件中的查询称为嵌套查询或子查询。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报