关系运算讲解课件.ppt

上传人(卖家):三亚风情 文档编号:3291680 上传时间:2022-08-17 格式:PPT 页数:44 大小:1.66MB
下载 相关 举报
关系运算讲解课件.ppt_第1页
第1页 / 共44页
关系运算讲解课件.ppt_第2页
第2页 / 共44页
关系运算讲解课件.ppt_第3页
第3页 / 共44页
关系运算讲解课件.ppt_第4页
第4页 / 共44页
关系运算讲解课件.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、1回顾回顾1.逻辑模型:层次型、网状、关系型三种数据模型逻辑模型:层次型、网状、关系型三种数据模型2.ER模型到模型到关系模型关系模型的转化的转化数据库原理与应用数据库原理与应用第第4讲讲 关系运算关系运算3本讲内容、重点、难点本讲内容、重点、难点重点重点p基本的关系运算基本的关系运算:笛卡儿积、并、差、投影、选择笛卡儿积、并、差、投影、选择。n 难点难点p关系运算中的笛卡儿积、投影、选择、连接关系运算中的笛卡儿积、投影、选择、连接1.关系代数关系代数关系的数学定义关系的数学定义关系运算关系运算1.1 关系代数关系代数n 关系代数是关系操作的关系代数是关系操作的理论基础理论基础,是关系数据操作

2、的传统,是关系数据操作的传统方式,方式,n 关系代数是实现关系操作的一种方法,是关系代数是实现关系操作的一种方法,是理解关系操作的理解关系操作的基础基础。n 关系代数是一种关系代数是一种抽象的查询语言抽象的查询语言,是关系数据操作语言的,是关系数据操作语言的一种传统表达方式,它是一种传统表达方式,它是用对关系的运算来表达查询的用对关系的运算来表达查询的。关系代数的运算对象是关系(或表),关系代数的运算对象是关系(或表),运算结果也是关系(或表)。运算结果也是关系(或表)。n 1.1.关系代数的运算及运算符关系代数的运算及运算符n传统的集合运算传统的集合运算n并运算(并运算()n交运算(交运算(

3、)n差运算(差运算()n广义笛卡尔(广义笛卡尔()n专门的关系运算专门的关系运算n选择运算选择运算()n投影运算(投影运算()n连接运算(连接运算()n除运算(除运算()3)算术比较符:=,=,或 4)逻辑运算符:(非),(与),(或)71并并p记作记作RS。RS既包含既包含R中的元组,也包含中的元组,也包含S中的元中的元组。组。2交交p记作记作RS。RS包含了所有同属于包含了所有同属于R、S的元组。的元组。3差差p记作记作R-S。R-S包含了所有属于包含了所有属于R但不属于但不属于S的元组。的元组。注:注:1:参加运算的:参加运算的R与与S两个表必须包含有相同的属性个数,两个表必须包含有相同

4、的属性个数,且对应的属性域要相同。且对应的属性域要相同。2:并不要求:并不要求R与与S表的属性名必须完全相同。表的属性名必须完全相同。3:运算的结果关系要与:运算的结果关系要与R关系模式一样。关系模式一样。并交差运算并交差运算8 并(Union)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRS pRS既包含既包含R中的元组,也包含中的元组,也包含S中的元组。中的元组。9 并(Union)给定关系给定关系R和关系和关系S,具有相同的关系模式:,具有相同的关系模式:(姓名(姓名N,身高,身高H,体重,

5、体重W)NHWC17075L18078Z17075NHWM17580L18078关系R关系SRS NHWC17075L18078Z17075M1758010 交(Intersection)ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR S RS包含了所有同属于包含了所有同属于R、S的元组的元组11 交(Intersection)给定关系给定关系R和关系和关系S,具有相同的关系模式:,具有相同的关系模式:(姓名(姓名N,身高,身高H,体重,体重W)NHWC17075L18078Z17075NHWM17580L18078关系

6、R关系SR S NHWL1807812 差(Difference)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S R-S包含了所有属于包含了所有属于R但不属于但不属于S的元组的元组13 差(Difference)给定关系给定关系R和关系和关系S,具有相同的关系模式:,具有相同的关系模式:(姓名(姓名N,身高,身高H,体重,体重W)NHWC17075L18078Z17075NHWM17580L18078关系R关系SR-S NHWC17075Z17075关系的笛卡尔积关系的笛卡尔积笛卡尔积笛卡尔积设设R和和S是两个关系,如果是两个关

7、系,如果R是是m元关系、有元关系、有k个元组,个元组,S是是n元关系、有元关系、有l个元组,则广义笛卡尔积个元组,则广义笛卡尔积RS是是一个一个m+n元关系元关系、有、有kl个元组个元组。广义笛卡儿积可。广义笛卡儿积可以记作:以记作:,|SsRrrsSR关系的广义笛卡尔积对应于两个关系元组横向合并的关系的广义笛卡尔积对应于两个关系元组横向合并的操作,是关系代数的基本操作操作,是关系代数的基本操作ABCadcbedCfeABCbagbac关系关系R关系关系S16域域域域迪卡尔积迪卡尔积笛卡儿积举例笛卡儿积举例 1:17给出三个域:给出三个域:D1=导师导师 =张清玫,刘逸张清玫,刘逸 D2=专业

8、专业=计算机专业,信息专业计算机专业,信息专业 D3=研究生研究生=李勇,刘晨,王敏李勇,刘晨,王敏则则D1,D2,D3的笛卡尔积为:的笛卡尔积为:D1D2D3(张清玫,计算机专业,李勇张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏张清玫,计算机专业,王敏),(张清玫,信息专业,李勇张清玫,信息专业,李勇),(张清玫,信息专业,刘晨张清玫,信息专业,刘晨),(张清玫,信息专业,王敏张清玫,信息专业,王敏),(刘逸,计算机专业,李勇刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨刘逸,计算机专业,刘晨),(刘逸,计算机专业,王敏刘逸

9、,计算机专业,王敏),(刘逸,信息专业,李勇刘逸,信息专业,李勇),(刘逸,信息专业,刘晨刘逸,信息专业,刘晨),(刘逸,信息专业,王敏刘逸,信息专业,王敏)笛卡儿积举例笛卡儿积举例 2:18导师导师专业专业研究生研究生张清枚张清枚计算机计算机李勇李勇张清枚张清枚计算机计算机刘琛刘琛张清枚张清枚计算机计算机王敏王敏张清枚张清枚机械机械李勇李勇张清枚张清枚机械机械刘琛刘琛张清枚张清枚机械机械王敏王敏刘逸刘逸计算机计算机李勇李勇刘逸刘逸计算机计算机刘琛刘琛刘逸刘逸计算机计算机王敏王敏刘逸刘逸机械机械李勇李勇刘逸刘逸机械机械刘琛刘琛刘逸刘逸机械机械王敏王敏现实的数据是这现实的数据是这个表中的一部分个

10、表中的一部分上例的运算结果:上例的运算结果:练习练习n 设设R(A,B,C)=(a1,b1,c1),(a2,b2,c1),(a3,b2,c3)n S(A,B,C)=(a2,b2,c2),(a3,b3,c4),(a1,b1,c1)n 计算计算RUS,R S,R-S,R S专门的关系运算专门的关系运算n 选择运算选择运算(Select)n 投影运算投影运算(Project)n 连接运算连接运算(Join)n 除运算除运算(Division)专门关系运算专门关系运算 n 传统集合运算只是从行的角度进行,而要灵活传统集合运算只是从行的角度进行,而要灵活的实现关系数据库的数据维护、查询、统计等的实现关系

11、数据库的数据维护、查询、统计等多样操作,则须引入专门的关系运算。多样操作,则须引入专门的关系运算。(不仅(不仅涉及到行,而且涉及列)涉及到行,而且涉及列)p选择运算选择运算()p投影运算(投影运算()p连接运算(连接运算()p除运算(除运算()22关系运算关系运算4选择选择p在关系中选择满足给定条件在关系中选择满足给定条件F的诸元组,选择的诸元组,选择又称为限制(又称为限制(Restriction),记作:),记作:F(R)p选择运算是从选择运算是从行行的角度进行的运算。的角度进行的运算。23a.查询计算机系全体学生:查询计算机系全体学生:Sdept=计算机计算机(Student)或或5=计算

12、机计算机(Student)b.查询计算机系年龄小于查询计算机系年龄小于20的学的学生:生:Sdept=计算机计算机 Sage20(Student)或或5=计算机计算机 420(Student)SnoSname95001李勇李勇SsexSageSdept男男20计算机计算机95002刘琛刘琛女女19计算机计算机95003王敏王敏女女18信息信息95004章立章立男男19机械机械Student选择举例:选择举例:24编号编号系名系名姓名姓名性别性别出生年月出生年月0300403004计算机系计算机系韩东韩东男男1979.101979.100200102001外外 语语 系系刘玲刘玲女女1979.0

13、81979.080300103001计算机系计算机系王冬王冬男男1978.081978.080400104001数学系数学系姜姜 瑞瑞 青青男男1981.061981.060500105001电子工程电子工程系系翁翁 超超 雷雷男男1980.081980.080500205002电子工程系电子工程系田田 茉茉 莉莉女女1976.091976.090300203002计计 算算 机系机系宋宋 江江 明明男男1981.011981.010300303003计计 算算 机系机系邵林文贺邵林文贺女女1979.051979.05编号编号系系 名名姓姓 名名性别性别出生年月出生年月0300403004计算

14、机系计算机系韩东韩东男男1979.101979.100300103001计算机系计算机系王冬王冬男男1978.081978.080300203002计算机系计算机系宋江明宋江明男男1981.011981.010300303003计算机系计算机系邵林文贺邵林文贺女女1979.051979.05选择举例:Select Select*from student where from student where 系名系名=计算机系计算机系 选择运算举例:选择运算举例:职工号=E3(订购单)订购单关系 从订购单关系中选择职工号为“E3”的元组构成新的关系26关系运算关系运算5投影投影p从从关系关系中选择出

15、若干属性列组成新的关系,中选择出若干属性列组成新的关系,记记作:作:属性属性1,属性,属性2,属性属性n(R)p投影操作主要是从列的角度进行运算。投影操作主要是从列的角度进行运算。27投影举例:投影举例:SnoSname95001李勇李勇SsexSageSdept男男20计算机计算机95002刘琛刘琛女女19计算机计算机95003王敏王敏女女18信息信息95004章立章立男男19机械机械Studenta.查询学生姓名和所在系:查询学生姓名和所在系:Sname,Sdept(Student)b.查询学生所在系:查询学生所在系:Sdept(Student)Sname李勇李勇Sdept计算机计算机刘琛

16、刘琛计算机计算机王敏王敏信息信息章立章立机械机械Sdept计算机计算机信息信息机械机械投影后不仅取消了投影后不仅取消了原关系中的某些列,原关系中的某些列,而且还可能取消某而且还可能取消某些元组(避免重复些元组(避免重复行)行)28编编 号号系系 名名姓姓 名名性别性别出生年月出生年月03004 计算机系计算机系韩韩 东东男男1979.1002001 外语系外语系刘刘 玲玲女女1979.0803001 计算机系计算机系王王 冬冬男男1978.0804001 数学系数学系姜瑞青姜瑞青男男1981.0605001 电子工程系电子工程系翁超雷翁超雷男男1980.0805002 电子工程系电子工程系田茉

17、莉田茉莉女女1976.0903002 计算机系计算机系宋江明宋江明男男1981.0103003 计算机系计算机系邵林文贺邵林文贺女女1979.05系系 名名姓姓 名名计算机系计算机系韩韩 东东外语系外语系刘刘 玲玲计算机系计算机系王王 冬冬数学系数学系姜瑞青姜瑞青电子工程系电子工程系翁超雷翁超雷电子工程系电子工程系田茉莉田茉莉计算机系计算机系宋江明宋江明计算机系计算机系邵林文贺邵林文贺Select Select 系名,姓名系名,姓名 from studentfrom student投影举例投影举例29关系运算关系运算6连接连接p连接也称为连接也称为连接,连接运算的含义:从两个关系的笛连接,连接

18、运算的含义:从两个关系的笛卡尔积中选取满足一定条件的元组卡尔积中选取满足一定条件的元组p记作:记作:R S,F表示连接条件,是一个表示连接条件,是一个R中和中和S中的中的属性之间的比较表达式。属性之间的比较表达式。F30等值连接等值连接(equijoin)(不等值连接不等值连接)从关系从关系R R与与S S的广义笛卡尔积中的广义笛卡尔积中选取选取A A、B B属性值相等属性值相等的那些元组,即等值连接的那些元组,即等值连接为为:R SA=B自然连接自然连接(Natural join)两个关系中进行比较的分量必须是两个关系中进行比较的分量必须是相同的属性组相同的属性组,并在结果中把重复的属性列去

19、掉并在结果中把重复的属性列去掉R R和和S S具有相同的属性组具有相同的属性组B BR S31连接运算例连接运算例设有如图的关系和关系设有如图的关系和关系A B Ca1 b1 5a1 b2 6a2 b3 8a2 b4 12RB E b1 3 b2 7 b3 10 b3 2 b5 2S A R.B C S.B E a1 b1 5 b2 7 a1 b1 5 b3 10 a1 b2 6 b2 7 a1 b2 6 b3 10 a2 b3 8 b3 10R C89(S)、RS|R.学号学号=S.学号学号和和RS的值。的值。学号学号姓名姓名所属院系所属院系x120011苏阳苏阳信息学院信息学院A120001王燕王燕信息学院信息学院关系K

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(关系运算讲解课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|