《关系代数理论》课件_第1页
《关系代数理论》课件_第2页
《关系代数理论》课件_第3页
《关系代数理论》课件_第4页
《关系代数理论》课件_第5页
已阅读5页,还剩67页未读, 继续免费阅读

下载本文档

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

文档简介

第六讲关系代数理论关系数据库模型(3)1a第六讲关系代数理论关系数据库模型(3)1a关系数据操作关系数据模型的操作查询选择、投影、连接、除、并、交、差数据更新插入、删除、修改2a关系数据操作关系数据模型的操作2a关系代数

概述传统的集合运算专门的关系运算3a关系代数概述3a概述1.关系代数 一种抽象的查询语言 用对关系的运算来表达查询4a概述1.关系代数4a概述(续)2.关系代数运算的三个要素运算对象:关系运算结果:关系运算符:四类5a概述(续)2.关系代数运算的三个要素5a概述(续)集合运算符将关系看成元组的集合运算是从关系的“水平”方向即行的角度来进行专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系运算符进行操作逻辑运算符辅助专门的关系运算符进行操作6a概述(续)集合运算符6a集合运算符∪-∩×并差交广义笛卡尔积比较运算符>≥<≤=≠大于大于等于小于小于等于等于不等于运算符含义运算符含义表1关系代数运算符

概述(续)7a集合∪并比较运算符>大于运算符含义运算符含义表1关系代专门的关系运算符σπ

÷选择投影连接除逻辑运算符∧∨非与或运算符含义运算符含义表关系代数运算符(续)

概述(续)8a专门的关系σ选择逻辑运算符非运算符含义运算符含义表关系代概述(续)4.关系代数运算的分类 传统的集合运算并、差、交、广义笛卡尔积 专门的关系运算选择、投影、连接、除9a概述(续)4.关系代数运算的分类9a传统的集合运算并差交广义笛卡尔积10a传统的集合运算并10a1.并(Union)R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域R∪S

仍为n目关系,由属于R或属于S的元组组成

R∪S={t|t

R∨tS}11a1.并(Union)R和S11a并(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∪S

12a并(续)ABCa1b1c1a1b2c2a2b2c1ABCa12.差(Difference)R和S具有相同的目n相应的属性取自同一个域R-S

仍为n目关系,由属于R而不属于S的所有元组组成

R-S={t|tR∧tS}13a2.差(Difference)R和S13a差(续)ABCa1B1c1a1B2c2a2B2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S

14a差(续)ABCa1B1c1a1B2c2a2B2c1ABCa13.交(Intersection)R和S具有相同的目n相应的属性取自同一个域R∩S仍为n目关系,由既属于R又属于S的元组组成

R∩S={t|t

R∧tS} R∩S=R–(R-S)15a3.交(Intersection)R和S15a交(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∩S

16a交(续)ABCa1b1c1a1b2c2a2b2c1ABCa4.广义笛卡尔积(ExtendedCartesianProduct)Rn目关系,k1个元组Sm目关系,k2个元组R×S

列:(n+m)列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1×k2个元组R×S={tr

ts|tr

R∧tsS}17a4.广义笛卡尔积(ExtendedCartesianP广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR×S

ABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c118a广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c专门的关系运算选择投影连接除19a专门的关系运算选择19a选择(续)3)选择运算是从行的角度进行的运算4)举例 设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。σ20a选择(续)3)选择运算是从行的角度进行的运算σ20a选择(续)学号Sno姓名Sname性别Ssex年龄Sage所在系Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS(a)

Student例1例2例4例3例921a选择(续)学号姓名性别年龄所在系9500选择(续)[例1]查询信息系(IS系)全体学生

σSdept

='IS'(Student)

或σ5='IS'(Student)结果:SnoSnameSsexSageSdept95002刘晨女19IS95004张立男19IS22a选择(续)[例1]查询信息系(IS系)全体学生SnoSn2.投影(Projection)2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)π23a2.投影(Projection)2)投影操作主要是从列的投影(续)3)举例[例3]查询学生的姓名和所在系 即求Student关系上学生姓名和所在系两个属性上的投影

πSname,Sdept(Student)

或π2,5(Student)结果:24a投影(续)3)举例24a投影(续)SnameSdept李勇CS刘晨IS王敏MA张立IS25a投影(续)SnameSdept李勇CS刘晨IS王敏MA张立I

连接(续)3)两类常用连接运算等值连接(equijoin)什么是等值连接θ为“=”的连接运算称为等值连接

等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:

RS={|tr

R∧tsS∧tr[A]=ts[B]}A=Btrts26a连接(续)3)两类常用连接运算A=Btrts26a

连接(续)自然连接(Naturaljoin)什么是自然连接自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义

R和S具有相同的属性组B

R

S={|trR∧tsS∧tr[B]=ts[B]}trts27a连接(续)自然连接(Naturaljoin)trt连接(续)4)一般的连接操作是从行的角度进行运算。

自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。

AθBRS28a连接(续)4)一般的连接操作是从行的角度进行运算。AθBR连接(续)5)举例

[例5]ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RS29a连接(续)5)举例ABCa1b15a1b26a2b38a2b连接(续)R

S

AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310

C<E30a连接(续)RSAR.BCS.BEa1b15b连接(续)

等值连接R

SR.B=S.B

AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b3231a连接(续)等值连接RSR.B=S.连接(续)

自然连接R

S

ABCEa1b153a1b267a2b3810a2b38232a连接(续)自然连接RSABCEa4.除(Division)给定关系R(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]33a4.除(Division)给定关系R(X,Y)和S除(续)2)除操作是同时从行和列角度进行运算

÷RS34a除(续)2)除操作是同时从行和列角度进行运算÷RS34a除(续)ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2R÷SAa1RS35a除(续)ABCa1b1c2a2b3c7a3b4c6a1b2c小结l

关系代数运算 关系代数运算 并、差、交、笛卡尔积、投影、选择、连接、除 基本运算 并、差、笛卡尔积、投影、选择 交、连接、除 可以用5种基本运算来表达引进它们并不增加语言的能力,但可以简化表达36a小结l

关系代数运算36a第六讲关系代数理论关系数据库模型(3)37a第六讲关系代数理论关系数据库模型(3)1a关系数据操作关系数据模型的操作查询选择、投影、连接、除、并、交、差数据更新插入、删除、修改38a关系数据操作关系数据模型的操作2a关系代数

概述传统的集合运算专门的关系运算39a关系代数概述3a概述1.关系代数 一种抽象的查询语言 用对关系的运算来表达查询40a概述1.关系代数4a概述(续)2.关系代数运算的三个要素运算对象:关系运算结果:关系运算符:四类41a概述(续)2.关系代数运算的三个要素5a概述(续)集合运算符将关系看成元组的集合运算是从关系的“水平”方向即行的角度来进行专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系运算符进行操作逻辑运算符辅助专门的关系运算符进行操作42a概述(续)集合运算符6a集合运算符∪-∩×并差交广义笛卡尔积比较运算符>≥<≤=≠大于大于等于小于小于等于等于不等于运算符含义运算符含义表1关系代数运算符

概述(续)43a集合∪并比较运算符>大于运算符含义运算符含义表1关系代专门的关系运算符σπ

÷选择投影连接除逻辑运算符∧∨非与或运算符含义运算符含义表关系代数运算符(续)

概述(续)44a专门的关系σ选择逻辑运算符非运算符含义运算符含义表关系代概述(续)4.关系代数运算的分类 传统的集合运算并、差、交、广义笛卡尔积 专门的关系运算选择、投影、连接、除45a概述(续)4.关系代数运算的分类9a传统的集合运算并差交广义笛卡尔积46a传统的集合运算并10a1.并(Union)R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域R∪S

仍为n目关系,由属于R或属于S的元组组成

R∪S={t|t

R∨tS}47a1.并(Union)R和S11a并(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∪S

48a并(续)ABCa1b1c1a1b2c2a2b2c1ABCa12.差(Difference)R和S具有相同的目n相应的属性取自同一个域R-S

仍为n目关系,由属于R而不属于S的所有元组组成

R-S={t|tR∧tS}49a2.差(Difference)R和S13a差(续)ABCa1B1c1a1B2c2a2B2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S

50a差(续)ABCa1B1c1a1B2c2a2B2c1ABCa13.交(Intersection)R和S具有相同的目n相应的属性取自同一个域R∩S仍为n目关系,由既属于R又属于S的元组组成

R∩S={t|t

R∧tS} R∩S=R–(R-S)51a3.交(Intersection)R和S15a交(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∩S

52a交(续)ABCa1b1c1a1b2c2a2b2c1ABCa4.广义笛卡尔积(ExtendedCartesianProduct)Rn目关系,k1个元组Sm目关系,k2个元组R×S

列:(n+m)列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1×k2个元组R×S={tr

ts|tr

R∧tsS}53a4.广义笛卡尔积(ExtendedCartesianP广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR×S

ABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c154a广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c专门的关系运算选择投影连接除55a专门的关系运算选择19a选择(续)3)选择运算是从行的角度进行的运算4)举例 设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。σ56a选择(续)3)选择运算是从行的角度进行的运算σ20a选择(续)学号Sno姓名Sname性别Ssex年龄Sage所在系Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS(a)

Student例1例2例4例3例957a选择(续)学号姓名性别年龄所在系9500选择(续)[例1]查询信息系(IS系)全体学生

σSdept

='IS'(Student)

或σ5='IS'(Student)结果:SnoSnameSsexSageSdept95002刘晨女19IS95004张立男19IS58a选择(续)[例1]查询信息系(IS系)全体学生SnoSn2.投影(Projection)2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)π59a2.投影(Projection)2)投影操作主要是从列的投影(续)3)举例[例3]查询学生的姓名和所在系 即求Student关系上学生姓名和所在系两个属性上的投影

πSname,Sdept(Student)

或π2,5(Student)结果:60a投影(续)3)举例24a投影(续)SnameSdept李勇CS刘晨IS王敏MA张立IS61a投影(续)SnameSdept李勇CS刘晨IS王敏MA张立I

连接(续)3)两类常用连接运算等值连接(equijoin)什么是等值连接θ为“=”的连接运算称为等值连接

等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:

RS={|tr

R∧tsS∧tr[A]=ts[B]}A=Btrts62a连接(续)3)两类常用连接运算A=Btrts26a

连接(续)自然连接(Naturaljoin)什么是自然连接自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义

R和S具有相同的属性组B

R

S={|trR∧tsS∧tr[B]=ts[B]}trts63a连接(续)自然连接(Naturaljoin)trt连接(续)4)一般的连接操作是从行的角度进行运算。

自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。

AθBRS64a连接(续)4)一般的连接操作是从行的角度进行运算。AθBR连接(续)5)举例

[例5]ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RS65a连接(续)5)举例ABCa1b15a1b26a2b38a2b连接(续)R

S

AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310

C<E66a连接(续)RSAR.B

温馨提示

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

评论

0/150

提交评论