数据库关系运算(关系代数).ppt

上传人:牧羊曲112 文档编号:5985477 上传时间:2023-09-11 格式:PPT 页数:62 大小:539KB
返回 下载 相关 举报
数据库关系运算(关系代数).ppt_第1页
第1页 / 共62页
数据库关系运算(关系代数).ppt_第2页
第2页 / 共62页
数据库关系运算(关系代数).ppt_第3页
第3页 / 共62页
数据库关系运算(关系代数).ppt_第4页
第4页 / 共62页
数据库关系运算(关系代数).ppt_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《数据库关系运算(关系代数).ppt》由会员分享,可在线阅读,更多相关《数据库关系运算(关系代数).ppt(62页珍藏版)》请在三一办公上搜索。

1、第六讲 关系代数理论,关系数据库模型(3),关系数据库,关系数据模型概述关系数据模型的结构关系数据模型的完整性规则关系代数关系演算,关系模型,1.关系数据模型的数据结构 2.关系数据模型的操纵(运算)3.关系数据模型的完整性约束,关系数据操作,关系数据模型的操作查询选择、投影、连接、除、并、交、差数据更新插入、删除、修改,关系代数,概述 传统的集合运算 专门的关系运算,概述,1.关系代数2.运算的三要素3.关系代数运算的三个要素4.关系代数运算的分类5.表示记号,概述,1.关系代数一种抽象的查询语言用对关系的运算来表达查询,概述(续),2关系代数运算的三个要素运算对象:关系运算结果:关系运算符

2、:四类,概述(续),集合运算符将关系看成元组的集合运算是从关系的“水平”方向即行的角度来进行专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系运算符进行操作逻辑运算符辅助专门的关系运算符进行操作,表 关系代数运算符,概述(续),表 关系代数运算符(续),概述(续),概述(续),4关系代数运算的分类 传统的集合运算 并、差、交、广义笛卡尔积专门的关系运算 选择、投影、连接、除,概述(续),5表示记号(1)R,tR,tAi 设关系模式为R(A1,A2,An)它的一个关系设为R。tR表示t是R的一个元组tAi则表示元组t中相应于属性Ai的一个分量,(2)A,tA,A 若A=Ai1,Ai2,

3、Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,则A称为属性列或域列。tA=(tAi1,tAi2,tAik)表示元组t在属性列A上诸分量的集合。A则表示A1,A2,An中去掉Ai1,Ai2,Aik后剩余的属性组。,概述(续),概述(续),(3)tr ts R为n目关系,S为m目关系。tr R,tsS,tr ts称为元组的连接。它是一个n+m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。,概述(续),4)象集Zx 给定一个关系R(X,Z),X和Z为属性组。当tX=x时,x在R中的象集(Images Set)为:Zx=tZ|t R,tX=x 它表示R中属性组

4、X上值为x的诸元组在Z上分量的集合。,关系代数,概述传统的集合运算 专门的关系运算,传统的集合运算,并差交广义笛卡尔积,1.并(Union),R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域RS 仍为n目关系,由属于R或属于S的元组组成 RS=t|t Rt S,并(续),R,S,RS,2.差(Difference),R和S具有相同的目n相应的属性取自同一个域R-S 仍为n目关系,由属于R而不属于S的所有元组组成 R-S=t|tRtS,差(续),R,S,R-S,3.交(Intersection),R和S具有相同的目n相应的属性取自同一个域RS仍为n目关系,由既属于R又属于S的

5、元组组成 RS=t|t Rt S RS=R(R-S),交(续),R,S,R S,4.广义笛卡尔积(Extended Cartesian Product),Rn目关系,k1个元组Sm目关系,k2个元组RS 列:(n+m)列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1k2个元组RS=tr ts|tr R tsS,广义笛卡尔积(续),R,S,R S,关系代数,概述传统的集合运算专门的关系运算,专门的关系运算,选择投影连接除,1.选择(Selection),1)选择又称为限制(Restriction)2)选择运算符的含义在关系R中选择满足给定条件的诸元组 F(R)=t|t

6、RF(t)=真F:选择条件,是一个逻辑表达式,基本形式为:(X1Y1)(X2Y2):比较运算符(,或)X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代替;:逻辑运算符(或):表示任选项:表示上述格式可以重复下去,选择(续),3)选择运算是从行的角度进行的运算 4)举例设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。,选择(续),(a),Student,例1,例2,例4,例3,例9,选择(续),(b),Course,例9,选择(续),(c),SC,例7,例9,选择(续),例1 查询信息系(IS系)全体学生 Sdept=IS(Student

7、)或 5=IS(Student)结果:,选择(续),例2 查询年龄小于20岁的学生 Sage 20(Student)或 4 20(Student)结果:,2.投影(Projection),1)投影运算符的含义从R中选择出若干属性列组成新的关系 A(R)=tA|t R A:R中的属性列,2.投影(Projection),2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行),投影(续),3)举例例3 查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)或 2,5(Stude

8、nt)结果:,投影(续),投影(续),例4 查询学生关系Student中都有哪些系 Sdept(Student)结果:,3.连接(Join),1)连接也称为连接2)连接运算的含义从两个关系的笛卡尔积中选取属性间满足一定条件的元组 R S=|tr Rts StrAtsB A和B:分别为R和S上度数相等且可比的属性组:比较运算符连接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组。,连接(续),3)两类常用连接运算等值连接(equijoin)什么是等值连接为“”的连接运算称为等值连接 等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性

9、值相等的那些元组,即等值连接为:R S=|tr Rts StrA=tsB,A=B,连接(续),自然连接(Natural join)什么是自然连接自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义R和S具有相同的属性组B R S=|tr Rts StrB=tsB,连接(续),4)一般的连接操作是从行的角度进行运算。自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。,连接(续),5)举例 例5,R,S,连接(续),R S,连接(续),等值连接 R S,连接(续),自然连接 R S,4)象集Z,给定一个关系R(X,Z),X和Z为属

10、性组。当tX=x时,x在R中的象集(Images Set)为:Zx=tZ|t R,tX=x 它表示R中属性组X上值为x的诸元组在Z上分量的集合。,4)象集Z,R,S,4.除(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上投影的集合。RS=tr X|tr RY(S)Yx Yx:x在R中的象集,x=trX,除(续),2)除操作是同时从行和列角度进行运算,除(续),R,S,分析:,在

11、关系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)属性组上的投影所以 RS=a1,5综合举例,以学生-课程数据库为例例7 查询至少选修1号课程和3号课程的学生号码首先建立一个临时关系K:然后求:Sno.Cno(SC)K,综合举例(续),例 7续 Sno.Cno(SC)95001象集1,2,395002象集2,3 Cno(K)=1,3 于是:Sn

12、o.Cno(SC)K=95001,综合举例(续),例 8 查询选修了2号课程的学生的学号。Sno(Cno=2(SC)95001,95002,综合举例(续),例9 查询至少选修了一门其直接先行课为5号课程的课程的学生姓名。Sname(Cpno=5(Course SC Student)或 Sname(Cpno=5(Course)SC Sno,Sname(Student)或 Sname(Sno(Cpno=5(Course)SC)Sno,Sname(Student),综合举例(续),例10 查询选修了全部课程的学生号码和姓名。Sno,Cno(SC)Cno(Course)Sno,Sname(Studen

13、t),小结,l关系代数运算关系代数运算并、差、交、笛卡尔积、投影、选择、连接、除基本运算并、差、笛卡尔积、投影、选择交、连接、除可以用5种基本运算来表达 引进它们并不增加语言的能力,但可以简化表达,小结(续),l关系代数表达式关系代数运算经有限次复合后形成的式子l 典型关系代数语言ISBL(Information System Base Language)由IBM United Kingdom研究中心研制用于PRTV(Peterlee Relational Test Vehicle)实验系统,9/11/2023,An Introduction to Database System,62,Homework,Reading:C.J.Date,An Introduction to Database Systems page 200-238R.Ramakrishnan,J.Gehrkepp,100-129丁宝康 pp44-66 练习R.Ramakrishnan,J.Gehrkepp,128-129,,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号