【数据库系统概论】关系数据库(续).ppt

上传人:bao****ty 文档编号:131099126 上传时间:2020-05-04 格式:PPT 页数:116 大小:664KB
返回 下载 相关 举报
【数据库系统概论】关系数据库(续).ppt_第1页
第1页 / 共116页
【数据库系统概论】关系数据库(续).ppt_第2页
第2页 / 共116页
【数据库系统概论】关系数据库(续).ppt_第3页
第3页 / 共116页
【数据库系统概论】关系数据库(续).ppt_第4页
第4页 / 共116页
【数据库系统概论】关系数据库(续).ppt_第5页
第5页 / 共116页
点击查看更多>>
资源描述

《【数据库系统概论】关系数据库(续).ppt》由会员分享,可在线阅读,更多相关《【数据库系统概论】关系数据库(续).ppt(116页珍藏版)》请在金锄头文库上搜索。

1、西华师范大学计算机学院 数据库系统概论第二章关系数据库 续 第二章关系数据库 2 1关系模型概述2 2关系数据结构2 3关系的完整性2 4关系代数2 5关系演算2 6小结 2 4关系代数 概述传统的集合运算专门的关系运算 概述 1 关系代数2 运算的三要素3 关系代数运算的三个要素4 关系代数运算的分类5 表示记号 概述 1 关系代数一种抽象的查询语言用对关系的运算来表达查询 概述 续 2 关系代数运算的三个要素运算对象 关系运算结果 关系运算符 四类 概述 续 集合运算符将关系看成元组的集合运算是从关系的 水平 方向即行的角度来进行专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系

2、运算符进行操作逻辑运算符辅助专门的关系运算符进行操作 表2 4关系代数运算符 概述 续 表2 4关系代数运算符 续 概述 续 概述 续 4 关系代数运算的分类传统的集合运算并 差 交 广义笛卡尔积专门的关系运算选择 投影 连接 除 概述 续 5 表示记号 1 R t R t Ai 设关系模式为R A1 A2 An 它的一个关系设为R t R表示t是R的一个元组t Ai 则表示元组t中相应于属性Ai的一个分量 概述 续 2 A t A A若A Ai1 Ai2 Aik 其中Ai1 Ai2 Aik是A1 A2 An中的一部分 则A称为属性列或域列 t A t Ai1 t Ai2 t Aik 表示元组

3、t在属性列A上诸分量的集合 A则表示 A1 A2 An 中去掉 Ai1 Ai2 Aik 后剩余的属性组 概述 续 3 trtsR为n目关系 S为m目关系 tr R ts S trts称为元组的连接 它是一个n m列的元组 前n个分量为R中的一个n元组 后m个分量为S中的一个m元组 概述 续 4 象集Zx给定一个关系R X Z X和Z为属性组 当t X x时 x在R中的象集 ImagesSet 为 Zx t Z t R t X x 它表示R中属性组X上值为x的诸元组在Z上分量的集合 2 4关系代数 概述传统的集合运算专门的关系运算 2 4 1传统的集合运算 并差交广义笛卡尔积 1 并 Union

4、 R和S具有相同的目n 即两个关系都有n个属性 相应的属性取自同一个域R S仍为n目关系 由属于R或属于S的元组组成R S t t R t S 并 续 R S R S 2 差 Difference R和S具有相同的目n相应的属性取自同一个域R S仍为n目关系 由属于R而不属于S的所有元组组成R S t t R t S 差 续 R S R S 3 交 Intersection R和S具有相同的目n相应的属性取自同一个域R S仍为n目关系 由既属于R又属于S的元组组成R S t t R t S R S R R S 交 续 R S R S 4 广义笛卡尔积 ExtendedCartesianProd

5、uct Rn目关系 k1个元组Sm目关系 k2个元组R S列 n m 列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行 k1 k2个元组R S trts tr R ts S 广义笛卡尔积 续 R S R S 2 4关系代数 概述传统的集合运算专门的关系运算 2 4 2专门的关系运算 选择投影连接除 1 选择 Selection 1 选择又称为限制 Restriction 2 选择运算符的含义在关系R中选择满足给定条件的诸元组 F R t t R F t 真 F 选择条件 是一个逻辑表达式 基本形式为 X1 Y1 X2 Y2 比较运算符 或 X1 Y1等 属性名 常量 简单

6、函数 属性名也可以用它的序号来代替 逻辑运算符 或 表示任选项 表示上述格式可以重复下去 选择 续 3 选择运算是从行的角度进行的运算4 举例设有一个学生 课程数据库 包括学生关系Student 课程关系Course和选修关系SC 选择 续 a Student 例1 例2 例4 例3 例9 选择 续 b Course 例9 选择 续 c SC 例7 例9 选择 续 例1 查询信息系 IS系 全体学生 Sdept IS Student 或 5 IS Student 结果 选择 续 例2 查询年龄小于20岁的学生 Sage 20 Student 或 4 20 Student 结果 2 投影 Pro

7、jection 1 投影运算符的含义从R中选择出若干属性列组成新的关系 A R t A t R A R中的属性列 2 投影 Projection 2 投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列 而且还可能取消某些元组 避免重复行 投影 续 3 举例 例3 查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影 Sname Sdept Student 或 2 5 Student 结果 投影 续 投影 续 例4 查询学生关系Student中都有哪些系 Sdept Student 结果 3 连接 Join 1 连接也称为 连接2 连接运算的含义从两个

8、关系的笛卡尔积中选取属性间满足一定条件的元组RS tr R ts S tr A ts B A和B 分别为R和S上度数相等且可比的属性组 比较运算符连接运算从R和S的广义笛卡尔积R S中选取 R关系 在A属性组上的值与 S关系 在B属性组上值满足比较关系的元组 连接 续 3 两类常用连接运算等值连接 equijoin 什么是等值连接 为 的连接运算称为等值连接等值连接的含义从关系R与S的广义笛卡尔积中选取A B属性值相等的那些元组 即等值连接为 RS tr R ts S tr A ts B A B 连接 续 自然连接 Naturaljoin 什么是自然连接自然连接是一种特殊的等值连接两个关系中进

9、行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义R和S具有相同的属性组BRS tr R ts S tr B ts B 连接 续 4 一般的连接操作是从行的角度进行运算 自然连接还需要取消重复列 所以是同时从行和列的角度进行运算 连接 续 5 举例 例5 R S 连接 续 RS 连接 续 等值连接RS 连接 续 自然连接RS 4 象集Z 给定一个关系R X Z X和Z为属性组 当t X x时 x在R中的象集 ImagesSet 为 Zx t Z t R t X x 它表示R中属性组X上值为x的诸元组在Z上分量的集合 4 象集Z R S 4 除 Division 给定关系R

10、X Y 和S Y Z 其中X Y Z为属性组 R中的Y与S中的Y可以有不同的属性名 但必须出自相同的域集 R与S的除运算得到一个新的关系P X P是R中满足下列条件的元组在X属性列上的投影 元组在X上分量值x的象集Yx包含S在Y上投影的集合 R S tr X tr R Y S Yx Yx x在R中的象集 x tr X 除 续 2 除操作是同时从行和列角度进行运算3 举例 例6 p62 除 续 在除运算中 若被除关系为m元关系 除关系为n元关系 则运算结果为一个m n元关系 在进行除运算时 先将被除关系中的m n列按值的不同分成若干组 然后检查每个组 看m n列以外的那些列中是否包含除关系的全部

11、元组 包含则取该m n列的值作为商关系的一个元组 否则不取 通常 作为除关系中的属性都在被除关系中有对应的属性 所谓对应属性是指它们可以取不同的名称 但值域相同 例RSABCDCDabcdcdabefefbcefedcdedefabde 计算 R S 除 续 R S 分析 在关系R中 A可以取四个值 a1 a2 a3 a4 a1的象集为 b1 c2 b2 c3 b2 c1 a2的象集为 b3 c7 b2 c3 a3的象集为 b4 c6 a4的象集为 b6 c6 S在 B C 上的投影为 b1 c2 b2 c1 b2 c3 只有a1的象集包含了S在 B C 属性组上的投影所以R S a1 5 综

12、合举例 以学生 课程数据库为例 P 59 例7 查询至少选修1号课程和3号课程的学生号码首先建立一个临时关系K 然后求 Sno Cno SC K 综合举例 续 例7续 Sno Cno SC 95001象集 1 2 3 95002象集 2 3 Cno K 1 3 于是 Sno Cno SC K 95001 综合举例 续 例8 查询选修了2号课程的学生的学号 Sno Cno 2 SC 95001 95002 综合举例 续 例9 查询至少选修了一门其直接先行课为5号课程的课程的学生姓名 Sname Cpno 5 CourseSCStudent 或 Sname Cpno 5 Course SC Sno

13、 Sname Student 或 Sname Sno Cpno 5 Course SC Sno Sname Student 综合举例 续 例10 查询选修了全部课程的学生号码和姓名 Sno Cno SC Cno Course Sno Sname Student 第二章关系数据库 2 1关系模型概述2 2关系数据结构2 3关系的完整性2 4关系代数2 5关系演算2 6小结 2 5关系演算 关系演算以数理逻辑中的谓词演算为基础种类 按谓词变元不同分类1 元组关系演算 以元组变量作为谓词变元的基本对象元组关系演算语言ALPHA2 域关系演算 以域变量作为谓词变元的基本对象域关系演算语言QBE 2 5

14、 1元组关系演算语言ALPHA 由E F Codd提出INGRES所用的QUEL语言是参照ALPHA语言研制的语句检索语句GET更新语句PUT HOLD UPDATE DELETE DROP 一 检索操作 语句格式 GET工作空间名 定额 表达式1 操作条件 DOWN UP表达式2 定额 规定检索的元组个数格式 数字表达式1 指定语句的操作对象格式 关系名 关系名 属性名 元组变量 属性名 集函数 操作条件 将操作结果限定在满足条件的元组中格式 逻辑表达式表达式2 指定排序方式格式 关系名 属性名 元组变量 属性名 检索操作 续 1 简单检索 即不带条件的检索 2 限定的检索 即带条件的检索

15、3 带排序的检索 4 带定额的检索 5 用元组变量的检索 6 用存在量词的检索 检索操作 续 7 带有多个关系的表达式的检索 8 用全称量词的检索 9 用两种量词的检索 10 用蕴函 Implication 的检索 11 集函数 1 简单检索 GET工作空间名 表达式1 例1 查询所有被选修的课程号码 GETW SC Cno 例2 查询所有学生的数据 GETW Student 2 限定的检索 格式GET工作空间名 表达式1 操作条件 例3 查询信息系 IS 中年龄小于20岁的学生的学号和年龄 GETW Student Sno Student Sage Student Sdept IS Stud

16、ent Sage 20 3 带排序的检索 格式GET工作空间名 表达式1 操作条件 DOWN UP表达式2 例4 查询计算机科学系 CS 学生的学号 年龄 结果按年龄降序排序 GETW Student Sno Student Sage Student Sdept CS DOWNStudent Sage 4 带定额的检索 格式 GET工作空间名 定额 表达式1 操作条件 DOWN UP表达式2 例5 取出一个信息系学生的学号 GETW 1 Student Sno Student Sdept IS 例6 查询信息系年龄最大的三个学生的学号及其年龄 结果按年龄降序排序 GETW 3 Student Sno Student Sage Student Sdept IS DOWNStudent Sage 5 用元组变量的检索 元组变量的含义表示可以在某一关系范围内变化 也称为范围变量RangeVariable 元组变量的用途 简化关系名 设一个较短名字的元组变量来代替较长的关系名 操作条件中使用量词时必须用元组变量 定义元组变量格式 RANGE关系名变量名一个关系可以设多个元组变量 6 用存在量词

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号