第4讲关系代数(一).ppt_第1页
第4讲关系代数(一).ppt_第2页
第4讲关系代数(一).ppt_第3页
第4讲关系代数(一).ppt_第4页
第4讲关系代数(一).ppt_第5页
免费预览已结束,剩余39页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章关系数据库理论 关系代数 一 关系模型关系代数关系演算 本章内容 关系操作语言关系代数语言用对关系的运算来表达查询要求 关系演算语言用查询得到的元组应满足的谓词条件来表达查询要求 结构化的查询语言SQL 回顾 关系代数的重要性为关系模型操作提供了一个形式化的基础 被用作衡量另一种关系模型语言表达能力的尺度 被用在RDBMS中 作为实现和优化查询的基础 面向RDBMS的SQL标准查询语言中结合了关系代数中的一些概念 回顾 代数操作运算符和原子操作数关系代数基于一组以关系为操作对象的运算符集合运算符专门的关系运算符原子操作数包括代表关系的变量和代表关系实例的常量 3 2关系代数 关系代数运算符传统的集合运算并 差 交 广义笛卡尔积将关系看成元组的集合 其运算是从关系的 水平 方向即元组的角度来进行的 专门的关系运算投影 选择 连接 除不仅涉及元组而且涉及属性列 比较运算符和逻辑运算符是用来辅助专门的关系运算的 3 2关系代数 传统的集合运算R和S相容关系设两个关系R和S具有相同的目 且相应的属性取自同一个域例如 若R和S都是建立在集合A和B上的二元关系 则R和S是相容的 3 2关系代数 传统的集合运算设R和S是相容关系 则定义并 差 交运算如下 并 Union 运算R S t t R t S 差 Difference 运算R S t t R t S 交 Intersection 运算R S t t R t S R S R R S R S S S R 3 2关系代数 传统的集合运算 例1 给出关系R1 R2原始数据 求R1 R2 R1 R2 R1 R2 3 2关系代数 3 2关系代数 R1 R2 R1 R2 R1 R2 传统的集合运算广义笛卡尔积 3 2关系代数 笛卡尔积 给定一组域D1 D2 Dn 这n个域的笛卡尔积为 D1 D2 Dn d1 d2 dn di Di i 1 2 n 每一个元素 d1 d2 dn 叫作一个n元组 n tuple 或简称为元组 Tuple 元素中的每一个di值叫作一个分量 Component 传统的集合运算广义笛卡尔积设关系R和关系S分别是m目和n目关系 R中有k1个元组 S中有k2个元组 R与S的广义笛卡尔积记为RXS 它为一个m n目的新关系 共有k1Xk2个元组 且每个元组的前m个分量是关系R的一个元组 后n个分量是关系S的一个元组 RXS trts tr R ts S 3 2关系代数 传统的集合运算 例2 给出关系R1 R3原始数据 求R1XR3 3 2关系代数 3 2关系代数 R1XR3 S1 查询 1 所有学生的信息 2 重复学生的信息 3 删除S1关系中包含的S2关系中的学生信息 3 2关系代数 S2 S1 S2 S1 S2 S1 S2 专门的关系运算投影 Projection 运算投影运算是个一元的 对属性进行操作的运算 从关系中选择若干属性列组成一个新的关系 设关系R为n目关系 Ai1 Ai2 Aim是关系属性A1 A2 An的一部分 则关系R在Ai1 Ai2 Aim上的投影是一个m目关系 其属性为Ai1 Ai2 Aim 记为 Ai1 Ai2 Aim R 或 i1 i2 im R 3 2关系代数 专门的关系运算选择 Selection 运算选择运算是个一元 对元组进行操作的运算 在关系R中选择满足给定条件的元组 设F为一逻辑表达式 则在关系R上的F选择是在R中挑选满足F的所有元组组成一个新的关系 这个新关系与R相容 是R的一个子集 记为 F R F R t t R F t TRUE 3 2关系代数 专门的关系运算选择运算 F R 中F是一逻辑表达式 由下面的规则组成 由基本逻辑表达式a b组成a b可为属性名或常量 但不能同时为常量 为比较符 和 对基本逻辑表达式进行逻辑运算 否定 并且 和 或者 构成复合逻辑表达式 3 2关系代数 专门的关系运算 例2 给出关系R1 R2原始数据 查询 A3 A2 R1 A2 5 A3 f R2 3 2关系代数 3 2关系代数 3 R1 2 5 3 f R2 学生 查询 1 计算机系学生的信息 2 所有学生的姓名 3 计算机系学生的姓名 3 2关系代数 所在系 计算机系 学生 姓名 所在系 计算机系 学生 姓名 学生 专门的关系运算连接 Join 运算从两个关系的笛卡尔积中选取属性间满足一定条件的元组 记为R SA BA和B分别是R和S上度数相等且可比的属性组 是比较运算符 3 2关系代数 专门的关系运算连接运算R S trts tr R ts S tr A ts B A Btr A ts B 分别表示关系R S的元组t在属性列A B上诸分量的集合 3 2关系代数 专门的关系运算连接运算等值连接 为 时R S trts tr R ts S tr A ts B A Btr A ts B R A1 S B1 R A2 S B2 R Ak S Bk 3 2关系代数 专门的关系运算连接运算自然连接是一种特殊的等值连接 要求A和B相同 并且在结果中把重复的属性列去掉 R S trts tr R ts S tr A ts A tr A ts A R A1 S A1 R A2 S A2 R Ak S Ak 3 2关系代数 专门的关系运算连接运算在连接运算中 基本逻辑表达式A B也可为对基本逻辑表达式进行逻辑运算的复合逻辑表达式 称为F连接 R FSF连接运算是在R和S的广义笛卡尔积R S中 选取符合F条件的元组 R FS F RXS 3 2关系代数 专门的关系运算 例3 给出关系G H原始数据 查询G H G H G HG B H BG B H B 3 2关系代数 3 2关系代数 G HG B H B G HG B H B G H 学生 选课 查询 学生个人及选课信息 3 2关系代数 S SC S SC SxSC 3 2关系代数 S SC SxSC S SNO SC SNO 3 2关系代数 S SC 3 2关系代数 学生 选课 查询 学生个人及选课信息 3 2关系代数 查询 学生个人及选课信息 3 2关系代数 学生 选课 学生 课程 查询 学生个人及选课信息 3 2关系代数 学生 课程 X 学生 课程 选课 3 2关系代数 3 2关系代数 专门的关系运算外连接R S时 保留因在公共属性上值不同而被舍弃的元组 悬浮元组 并且在这些元组新增加的属性上赋上空值NULL 若结果中只保存R中的悬浮元组 则称为R与S的 左外连接 若结果中只保存S中的悬浮元组 则称为R与S的 右外连接 若结果中保存R S中的所有悬浮元组 则称为R与S的 全外连接 3 2关系代数 专门的关系运算 外连接 R S R S R与S外连接 R与S左外连接 R与S右外连接 3 2关系代数 1 检索 程军 老师所授课程的课程号和课程名 CNO CNAME TEACHER 程军 C S C SC 3 2关系代数 2 检索成绩大于等于90的学号 姓名和所选课程号及成绩 SNO SNAME 课程号 GRADE GRADE 90 S SC SNO SNAME 课程号 GRADE GRADE 90 SC S S C SC 3 2关系代数 3 检索年龄大于21的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论