中南财经政法大学数据库及其应用(5)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• Access将一般查询分为6种类型: ✓ 选择查询:从数据源中查询所需数据。 ✓ 生成表查询:将查询的结果保存为新的表。 ✓ 追加查询:向表中插入追加数据。 ✓ 更新查询:修改更新表中数据。 ✓ 交叉表查询:将查询到的符合特定格式的数据转换
为交叉表格式。 ✓ 删除查询:删除表中的数据。
5.1 查询及查询对象概述
• 上述6种查询实现了数据库操作功能。 • 这6种查询都有可视定义方式。 • Access将这6种查询归纳为两大类:
“选择查询”和“动作查询” • “选择查询”包括:选择查询和交叉表查询;另外4
种为动作查询。 • 此外,还有一类特定查询:联合、传递、数据定义。
这些查询功能的实现,只能通过SQL语句完成,而没 有等价的可视方式。
5.1 查询及查询对象概述
➢ 数据库三大基本功能: ✓ 数据定义功能:实现数据库及各种对象的创建、修
改和删除。 ✓ 数据操作功能:对于数据的插入、删除、更新和查
询操作。 ✓ 数据控制功能:对数据库安全性、可用性等的管理
和控制。 • 通过数据库语言实现数据库系统功能。
5.1 查询及查询对象概述
• 关系型数据库标准语言是结构化查询语言(Structure Query Language),简称SQL。
5.2 SQL查询
5.2 SQL查询
➢ 9.SELECT语句总结 SELECT <输出列> [INTO 保存表名 ] FROM <数据源> [ WHERE <条件表达式> [ GROUP BY <分组项> [, ...] [ HAVING <结果过滤条件> ] ] [UNION [ALL] SELECT 语句 ] [ORDER BY <排序列> [ASC | DESC] ...]]
5.2.1 Access数据运算与表达式
5.2 SQL查询
• 表达式不能独立使用。
• 可以通过以下语句来查看表达式的运算结果:
SELECT <表达式> [AS 名称] [,<表达式> … ]
• 在SQL视图窗口中输入语句,然后运行,以表格的形 式显示运算结果。
• 表达式根据运算结果的类型分为文本、数字、日期、 逻辑等表达式。“名称”用于命名显示结果的列,缺 省名称,由Access自动命名列名。
• 详细组成子句通过例子分析。 • SELECT语句的数据源是表或查询对象(最终还是来
源于表),查询结果的形式仍然是表的形式。
➢ 1.基于单数据源的简单查询 ➢ 2.条件查询 ➢ 3.基于多数据源的联接查询 ➢ 4.分组统计查询 ➢ 5.嵌套子查询 ➢ 6.派生表查询 ➢ 7.子查询合并 ➢ 8.查询结果保存到表
5.2.4 SQL的更新功能
5.2 SQL查询
• 更新操作不增加、减少表中记录,而是更改记录的 字段值。语法如下。
数据的插入、删除和更新等操作功能,但是核心功能 是数据的查询。
• 查询通过查询对象实施。
5.1 查询及查询对象概述
5.1.2 SQL概述
➢ 1.SQL发展过程 • 1974年提出SQL,1986年ANSI(American
National Institute)批准将SQL作为关系数据库语 言的美国标准。1987年,ISO通过了该标准,SQL 成为国际标准。现今所有关系型DBMS都支持SQL ,虽然大多对标准SQL进行了改动,但基本内容、 命令和格式完全一致。
式的使用方式;集多种功能于一体;可移植性强。
5.1 查询及查询对象概述
5.1.3 Access查询的工作界面
• Access提供了两种查询工作界面:SQL命令方式和 可视交互方式。
➢ 进入查询工作界面的操作如下。
• 选择“创建”选项卡“查询设计”按钮单击,创建 初始查询并进入查询工作界面。由于查询的基础是 表,所以首先弹出“显示表”对话框。将要处理的 表添加到查询界面中。
• 有两种设计查询的界面视图可切换:“SQL视图” 和“设计视图”。
5.1 查询及查询对象概述
查 询 设 计 视 图
5.1 查询及查询对象概述
• SQL视图是一个类似“记事本”的文本编辑器,采用 命令行方式,用户在其中输入和编辑SQL语句。SQL 语句以“;”作为结束标志。
• 一次只能编辑处理一条SQL语句。
NOT → AND → OR → XOR
可以使用括号改变运算顺序。
• 不同运算可以进行混合运算。当多种运算混合时,一 般是先进行文本、数字、日期时间的运算,再进行比 较测试运算,最后进行逻辑运算。
5.2 SQL查询
➢ 2.函数
• 大量运算通过函数实现。Access设计了大量函数。 • 函数包括函数名、自变量和函数值3个要素。基本格
5.2 SQL查询
① <输出列>是必选项,可使用:
字段名列表、“*”;DISTINCT、ALL、TOP子 句;COUNT()、MAX()、MIN()、SUM()、AVG()等集 函数;表达式;AS重命名子句。
② INTO子句,用于将查询结果保存到表。
③ FROM子句指明查询的<数据源>。
“数据源”可以是表对象、派生表、查询对象。 数据源有“单数据源”和“多数据源”。多数据源要 进行联接,实现联接查询。联接包括:内联接、左外 联接、右外联接,以及笛卡尔积。AS重命名子句。
• 查询(Query)有广义和狭义两种解释。 • 广义的解释,使用SQL对数据库进行管理、操作,都
可以称为查询。狭义的查询是指数据库操作功能中查 找所需数据的操作。
5.1 查询及查询对象概述
• 在Access中,查询主要实现了定义功能和操作功能。 • 因此,Access中的“查询”,包括了表的定义功能和
5.2 SQL查询
➢ 在Access中应用查询,基本步骤是: (1)进入查询设计界面定义查询。 (2)运行查询,获得查询结果集。 (3)如果需要重复或在其他地方使用这个查询的结果 ,就将查询命名保存为一个查询对象。以后打开查询对 象,就会立即执行查询并获得新的结果。
5.2 SQL查询
➢ 查询都是使用SQL语句。 • SQL 语言由多条命令语句组成,每条语句语法较为复
⑦ UNION用于实现并运算。
⑧ ORDER子句用于查询结果有序显示,ASC或缺省表 示升序,DESC表示降序。
5.2 SQL查询
➢ 10.Access查询对象的意义
• 可以将查询保存为查询对象。查询对象保存的是查询 的定义,不是查询的结果。主要用途有以下两种。
① 查询对象可反复执行某个查询操作而无需每次定义 查询。同时,查询能自动与数据源保持同步。
5.2 SQL查询
• 比较运算符包括:>、>=、<、<=、=、<>。 • 还包括: ✓ “BETWEEN x1 AND x2”,x1为范围起点,x2为
终点。运算包含起点和终点。 ✓ LIKE运算用来对数据进行通配比较,通配符为“*”
、“#”和“?”,还可以使用“[]”。 ✓ 空值判断运算,用IS NULL或IS NOT NULL。 ✓ IN运算相当于集合的属于运算;EXISTS用于判断查
• 掌握SQL对使用关系数据库非常重要。
5.1 查询及查询对象概述
➢ 2.SQL基本功能 • SQL主要功能:数据定义、数据操作、数据控制。 ➢ 3.SQL使用方式 • SQL是自主式语言,能够独立执行;也是嵌入式语
言,可以嵌入程序中使用。 • SQL缺少数据格式控制和生成窗体和报表的功能,
在信息系统中必须将SQL和高级语言结合。 ➢ 4.SQL的特点 • 高度非过程化;面向表;表达简洁;自主式和嵌入
杂,为此在介绍命令的语法中使用了一些辅助性的符 号和一些约定,这些符号不是语句本身的一部分。 ① 大写字母组成的词汇:SQL命令或保留字。 ② 小写字母组成的词汇或中文:由用户定义。 ③ [ ] :被括起来的部分可选。 ④ < > :被括起来的部分需要进一步展开或定义。 ⑤ | :表示两项选其一。 ⑥ n… :表示 … 前面的项目可重复多次。
式是:函数名([<自变量>])Baidu Nhomakorabea • 自变量是需要传递给函数的参数,写在括号内。有的
函数无需自变量,称为哑参。缺省自变量时,括号仍 要保留。函数可以有多个自变量,之间用逗号分隔。
5.2 SQL查询
➢ 3.参数 • 在定义语句时不能确定、而只有在执行语句时才能确
定的量,可以在命令中加入输入参数。 • 参数是一个标识符,相当于一个占位符。参数的值在
5.2 SQL查询
5.2.3 SQL的追加功能
• 追加,是指将一条或多条记录加入到表中的操作。有 两种用法,其语法如下。
① INSERT INTO 表 [(字段1 [,字段2, ...])] VALUES (<表达式1>[, <表达式2>, ...])
② INSERT INTO 表 [(字段1 [,字段2, ...])] <查询语句>
执行语句时由用户输入确定。例如,定义语句: SELECT x-1;
• 其中标识符x是一个参数。执行时,首先弹出对话框 ,要求输入参数x的值,然后再做运算。
• 为了在输入时指明参数名,可使用参数定义语句。 PARAMETERS 参数名 数据类型
5.2 SQL查询
5.2.2 SQL查询
• SQL的查询命令只有一条SELECT语句,功能非常强 大,语句语法很复杂,其基本结构如下, SELECT <输出列>[ , …] FROM <数据源> [ … ] [ 其他子句 ]
《数据库及其应用》 第5章 查询
2014年1月
1 查询与查询对象
第5章
主要 知识点
2 运算与表达式 3 SQL语言:查询与更新;定义
4 可视化交互操作
5.1.1 查询概述
5.1 查询及查询对象概述
• 在数据库中,表对象实现了数据的组织与存 储,是数据库中数据的静态呈现。
• 而查询对象实现了数据的动态处理。查询在 表的基础上完成。
• 可视交互方式通过鼠标选择、拖动的方式定义查询。
• 两种工作方式在多数情况下等价。可视方式定义的查 询要转换为SQL语句去完成,因此设计视图都可以切 换到SQL视图查看其对应的SQL语句。
• 有一些功能只能通过SQL语句完成,没有对应的可视 方式。
5.1 查询及查询对象概述
5.1.4 查询分类与查询对象
5.2 SQL查询
➢ 1.运算符
① 数字运算符,用来对数字或货币型数据进行运算。
② 文本运算符,或称字符串运算符。普通文本运算将 两个字符串联接成一个字符串:“&”或者“+” ,两者完全等价。其他文本运算使用函数。
③ 日期时间运算符。普通日期时间运算符只有“+” 和“-”。其他使用函数。
④ 比较测试运算符。同类型数据,如文本、数字、货 币、日期时间型、是否型等可以进行比较运算。运 算结果为是否型,即true或false。由于Access中用 0表示false,-1表示true,所以运算结果为0或-1。
询的结果集合中是否有值。
5.2 SQL查询
⑤ 逻辑运算符。针对是否型值true或false运算,运算 结果仍为是否型。最早由布尔(Boolean)提出,所以 又称布尔运算。逻辑运算符主要包括:求反运算NOT 、与运算AND、或运算OR、异或运算XOR等。
其中,NOT是一元运算,其他都是二元运算。运 算的优先级是:
5.2 SQL查询
④ WHERE子句定义对数据源的筛选条件,“条件”是 由多种比较运算和逻辑运算组成的逻辑表达式。
⑤ GROUP子句用于分组汇总。输出列只能由分组字段 和汇总函数值组成。HAVING子句只能配合GROUP子 句使用,是对汇总查询完毕后的数据进行输出检验。
⑥ 子查询是在WHERE子句或HAVING子句中将查询的 结果参与下一步运算。有非相关子、相关子查询。
② 查询对象可成为其他操作的数据源。
5.2 SQL查询
• 在数据库中使用查询对象,具有以下意义。 ① 查询对象可以隐藏数据库的复杂性,可以按照用户 要求对数据进行重新组织,用户眼中的数据库就是他 所使用的查询对象,因此,查询对象也称为“用户视 图”。 ② 查询对象灵活、高效。 ③ 提高数据库的安全性。
5.2.1 Access数据运算与表达式
5.2 SQL查询
• 在查询和数据处理中,经常要对各类数据进行运算, 不同类型数据运算方式和表达各不相同。
• 在Access中,通过表达式实施运算。 • 表达式,是由运算符和运算对象组成的完成运算求值
的运算式。运算对象包括常量、输入参数、表中的字 段等,运算符包括一般运算和函数运算。
相关文档
最新文档