第5章节关系数据库.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章节关系数据库

第 5 章 关系数据库标准语言SQL 5.1 SQL 概述 SQL是结构化查询语言Structured Query Language 的缩写 查询是SQL的重要组成部分,SQL还包括数据定义、数据操纵和数据控制功能等部分 SQL已经成为关系数据库的标准数据语言 SQL语言的特点 SQL是一种一体化的语言,它包括了数据定义、数据查询、数据操纵和数据控制等方面的功能,它可以完成数据库活动的全部工作。 SQL是一种高度非过程化的语言,用户只需要描述“做什么”,SQL语言就可以将要求交给系统,系统自动完成全部工作。 SQL语言非常简洁,很接近自然语言(英语),因此易学,易掌握。 SQL语言可以直接以命令方式交互使用,也可以嵌入到程序设计语言中以程序方式使用。 5.2 查询功能 5.2.1 查询命令的格式 SQL的核心是查询,查询命令是SELECT。常用语法格式如下: SELECT…… FROM…… [WHERE……] [GROUP BY……] [HAVING……] [UNION[ALL]……] [ORDER BY……] 查询命令的说明 SELECT说明要查询的数据。 FROM说明要查询的数据来自那个或那些表可以对单个表或多个表进行查询。 WHERE说明查询条件即选择元组的条件。 GROUP BY 短语用于对查询结果进行分组,可以利用它进行分组汇总。 HAVING必须跟随GROUP BY使用,用来限定分组必须满足的条件。 ORDER BY用来对查询的结果进行排序。 5.2.2 简单查询 无条件查询 无条件查询: 由SELECT和FROM短语构成 条件查询 [DISTINCT]短语 [DISTINCT]短语 去掉结果中的重复值 5.2.3 简单的联接查询 联接是关系的基本操作之一,联接查询是基于多个关系的查询。 嵌套查询举例 嵌套查询练习 查询所有职工的工资都多于1210元的仓库的信息 解: select * from 仓库 where仓库号not in (select 仓库号from 职工 where工资=1210) and 仓库号 in (select 仓库号from 职工) 5.2.5 几个特殊运算符 BETWEEN……AND…… 在……和……之间 5.2.5 几个特殊运算符 LIKE%——表示0个或多个字符 LIKE_——表示一个字符 5.2.5 几个特殊运算符 不等于“!=”可用否定运算符NOT表示。 5.2.6 排序 使用排序短语ORDER BY 可以查询结果排序。 格式:ORDER BY 字段名1[ASC|DESC][,字段名2[ASC|DESC]…] 说明: 可以指定排序方式为升序或降序 允许按一列或多列排序 5.2.7 简单的计算查询 COUNT——计数 SUM——求和 AVG——计算平均值 MAX——就最大值 MIN——求最小值 5.2.7 简单的计算查询 5.2.8 分组与计算查询 短语: GROUP BY 组名[,组名……][HAVING条件] 功能: 先按属性分组,再进行查询,还可根据多个属性分组。当需要分组满足某条件时才检索,可用Having子句来限定分组。 5.2.8 分组与计算查询 5.2.9 利用空值查询 格式: IS NULL IS NOT NULL 5.2.10 别名与自连接查询 别名定义:为了简化关系名. 格式:关系名别名 5.2.10 别名与自连接查询 自联接:将同一关系与其自身进行联接称自联接。 在此关系上,存在着一种递归联系,既关系中的一些元组,据出自同一值域的两个不同属性,可以与另外一些元组有一种对应关系(一对多的联系)。 5.2.11 内外层互相关联嵌套查询 内外层互相关的查询:指内层查询需要外层查询提供值,而外层查询的条件的需要内层查询的结果。 5.2.12 使用量词和谓词的查询 在嵌套查询中还可以有如下两种形式: 1、表达式比较运算符[ANY|SOME](子查询) 2、[NOT] EXISTS(子查询) 说明: any、all、some是量词,其中any和some是同义词,比较时只要子查询中有一行能使结果为真,则结果就为真;而all要求子查询中的所有行都使结果为真时,结果才为真。 exists或not exists用来检查在子查询中是否有结果返回,即存在元组或不存在元组。 5.2.12 使用量词和谓词的查询 5.2.13 超联接查询 超联接:首先保证一个表中满足条件的元组都在结果表中;然后将满足联接条件的元组与另一个表的元组进行联接,不满足

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档