关系运算方法

上传人:l**** 文档编号:138253136 上传时间:2020-07-14 格式:PPT 页数:53 大小:2.80MB
返回 下载 相关 举报
关系运算方法_第1页
第1页 / 共53页
关系运算方法_第2页
第2页 / 共53页
关系运算方法_第3页
第3页 / 共53页
关系运算方法_第4页
第4页 / 共53页
关系运算方法_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《关系运算方法》由会员分享,可在线阅读,更多相关《关系运算方法(53页珍藏版)》请在金锄头文库上搜索。

1、第3章 关系代数,本章要点,了解并运算、 差运算、交运算、 笛卡尔积运算规则,及其集合运算的应用, 掌握投影运算、选择运算和连接运算规则,及其关系运算的应用。,关系模型概述,关系模型是以关系代数为理论基础的;关系模型的理论的奠基人是IBM公司的E. F. Codd。 目前国际著名的关系数据库有:DB2,Oracle,SQL Server等。在我国,东软集团有限公司的OpenBase、人大金仓的Kingbase ES、武汉达梦公司的DM4和中国航天科技集团公司OSCAR已经成为我国的支柱型关系数据库产品。 关系数据库系统是支持关系模型的数据库系统。,关系模型概述,数据模型,数据结构,数据操作,数

2、据的约束条件,关系模型,关系数据结构,关系操作集合,关系完整性约束,实体完整性约束,参照完整性约束,用户定义的完整性约束,二维表,选择、投影、连接 增加、删除、修改等,关系的数据库结构和形式化定义,关系的形式化定义: 域(Domain) 笛卡尔积(Cartesian Pdoduct) 关系(Relation),数字、字符及其子集。,域的积,笛卡尔积或其子集,D1=导师集合Supervisor=张清枚,刘逸 D2=专业集合Speciality=计算机,机械 D3=研究生集合Postgraduate=李勇,刘琛,王敏,D1D2D3= (张清枚,计算机,李勇), (张清枚,计算机,刘琛),(张清枚,

3、计算机,王敏), (张清枚,机械,李勇), (张清枚,机械,刘琛), (张清枚,机械,王敏), (刘逸,计算机,李勇), (刘逸,计算机,刘琛), (刘逸,计算机,王敏), (刘逸,机械,李勇), (刘逸,机械,刘琛), (刘逸,机械,王敏) ,D1D2D3的基数M = 2 23 = 12(共有12个元组),笛卡尔积示例,三个域,上例的运算结果,这个表是我们要的关系吗?,关于关系的数学描述,关系模型的数学基础是关系代数。关系代数是由一组以关系作为运算对象的特定的运算所组成的。用户通过这组运算,对一个或多个关系不断地进行“组合”与“分割”从而得到所需要的数据。 从一组集合的笛卡尔积中,抽取能反映

4、现实世界的,具有实际意义的子集。该子集即为一个关系。 D1D2Dn的子集叫做在域D1D2Dn上的关系,表示为: R(D1D2Dn) N是关系的目或度。,关系代数运算的三个要素: 运算对象:关系 运算结果:关系 运算符:四类。集合运算符、关系运算符、算术比较符和逻辑运算符。 关系代数运算分: 传统的集合运算: 并、差、交、广义笛卡尔积 专门的关系运算: 选择、投影、连接、除,关系代数运算符,3.1 集合运算 传统的集合运算包含并、差、交、广义笛卡尔积等。其运算是从关系的水平方向(表中的行)来进行的。,3.1 集合运算,3.1.1 并运算 设:关系R与关系S有相同的属性,并且对应属性有相同的域。

5、则关系R和S的并将产生一个包含R、S中所有不同元组的新关系。记作:RS。 并操作的示意图如下:,3.1 集合运算,3.1.1 并运算(续)在实际运用中,并运算可实现插入新元组的操作。,3.1 集合运算,3.1.2 差运算 设:关系R与关系S有相同的属性,并且对应属性有相同的域。 则关系R和S的差,将产生一个包含所有属于R但不属于S的元组新关系。记作:R-S。 差运算是有序的:R-S不等于S-R。,3.1 集合运算,3.1.2 差运算(续) 差操作的示意图如下:,3.1 集合运算,3.1.2 差运算(续),3.1 集合运算,(R中有S中没有的元组),3.1.3 交运算 设:关系R与关系S有相同的

6、属性,并且对应属性有相同的域。 则关系R和S的交,将产生一个包含所有既属于R也属于S的元组的新关系。记作:RS。 由于RS =R(R-S),或者RS =S(S-R), 所以RS 运算是一个复合运算。,3.1 集合运算,3.1.3 交运算(续) 交操作的示意图,如图3-3所示。,3.1.3 交运算(续),3.1 集合运算,(属于R而且也属于S),3.1.4 笛卡尔积运算 设:关系R为n列(n个属性),k1行(k1个元组) 关系S为m列(m个属性),k2行(k2个元组) 则关系R和S的笛卡尔积,是R中每个元组与S中每个元组连接组成的新关系。记作:RS。 注意:新关系的属性个数等于n+m,元组个数等

7、于k1*k2。,3.1 集合运算,3.1.4 笛卡尔积运算(续),3.1 集合运算,(R中每个元组与S中每个元组连接),例:,选择(Selection) 投影(Projection) 连接(Join) 除,关系数据库是用数学方法处理数据的,关系间可以进行各种运算,以支持对数据库的各种操作。我们介绍其中最基本的三种运算:,3.2 特殊的关系运算,3.2 特殊的关系运算,关系代数运算符(续),3.2 特殊的关系运算,3.2.1 投影运算 投影是选择关系R中的若干属性组成新的关系,并去掉了重复元组,是对关系的属性进行筛选,记作(R)。 其中A为关系R的属性列表,各属性间用逗号分隔。 投影运算的结果往

8、往比原有关系属性少,或改变原有关系的属性顺序,或改变原有关系的属性名等,投影运算结果不仅消除了原关系中的某些列,而且还要去掉重复元组。,3.2 特殊的关系运算,3.2.1 投影运算(续) 投影运算的示意图如图下:,3.2 特殊的关系运算,Sql查询命令: Select 系名,姓名 from student,例:查询学生所在系及姓名 系名,姓名 (student),3.2 特殊的关系运算,student,例 查询学生关系Student中都有哪些系 系名 (Student) Sql查询命令: Select 系名from student,结果:,3.2.2 选择运算 选择是根据给定的条件选择关系R中

9、的若干元组组成新的关系,是对关系的元组进行筛选。记作F(R) 其中F是选择条件,是一逻辑表达式。 选择运算结果往往比原有关系的元组个数少,它是原关系的一个子集,但关系模式不变。,第3章 关系代数 3.2 特殊的关系运算,3.2.2 选择运算(续) 选择运算示意图如下:,3.2 特殊的关系运算,例如从student关系中查询所有计算机系学生的记录。 系名=“计算机系 (student) Sql查询命令: Select * from student where 系名=计算机系,3.2 特殊的关系运算,Select * from student where 系名=计算机系,3.2 特殊的关系运算,例

10、 从学生选课关系SC中,查询选修了“图像处理”课程的学生学号。 SID( Cname=图像处理(SC) 一个运算的结果可以作为另一个运算的运算对象。 Select SID from SC where Cname= 图像处理,结果:,3.2.3 连接运算 连接是根据给定的条件,从两个已知关系R和S的笛卡尔积中,选取满足连接条件(属性之间)的若干元组组成新的关系。记作: (R) (S) 其中F是选择条件。,F,3.2 特殊的关系运算,3.2.3 连接运算(续) 1.条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。 2.相等连接:从关系R与S的笛卡尔积中选取满足等值条件的元组。 3.自

11、然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满足等值条件的元组,但新关系不包含重复的属性。 4.外连接,3.2 特殊的关系运算,连接运算(续),例关系R和关系S 如下所示:,R,S,连接运算(续),条件连接: R S的结果如下:,CE,连接运算(续),等值连接 R S 的结果如下:,连接运算(续),自然连接 R S的结果如下:,3.2 特殊的关系运算,例:设有学生表S、选课表SC、课程表C,对S、SC和C作自然连接, 得到学生的选课情况,3.2.3 连接运算(续) 4.外连接:是在连接条件的某一边添加一个符号“*”,其连接结果是为符号所在边添加一个全部由“空值”组成的行。,3.2

12、 特殊的关系运算,连接运算(续),外连接 如果把舍弃的元组保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接(OUTER JOIN)。 左外连接 如果只把左边关系R中要舍弃的元组保留就叫做左外连接(LEFT OUTER JOIN或LEFT JOIN) 右外连接 如果只把右边关系S中要舍弃的元组保留就叫做右外连接(RIGHT OUTER JOIN或RIGHT JOIN)。,3.2 特殊的关系运算,连接运算(续),关系R和关系S的外连接,3.2 特殊的关系运算,外连接 1、R和S作自然连接:把满足R.B=S.B条件的元组保留在新关系中。 2、把不满足R.B=S.B条件的元组也

13、保留在新关系中。相应的值填空。,关系R和关系S的左外连接,左外连接 1、R和S作自然连接:把满足R.B=S.B条件的元组保留在新关系中 2、把R关系中不满足R.B=S.B条件的元组也保留在新关系中。相应的值填空。,右外连接 1、R和S作自然连接:把满足R.B=S.B条件的元组保留在新关系中 2、把S关系中不满足R.B=S.B条件的元组也保留在新关系中。相应的值填空。,3.2.4 除法运算 设有关系R (X,Y)和S (Y),其中X,Y可以是单个属性或属性集,RS的结果组成的新关系为T。 RS运算规则:如果在(R)中能找到某一行u,使得这一行和S的笛卡尔积含在R中,则T中有u。 除法运算示意图如

14、下:,3.2 特殊的关系运算,3.2.4 除法运算(续),例设关系R、S分别为下图的(a)和(b),RS的结果为图(c),3.2.4 除法运算(续) 例3.10 已知商品交易情况XA(如表3-29所示),如要查找多笔交易,同时购买两种指定商品GA(如表3-30所示)的交易是哪些交易。可通过除法运算来实现 XAGA 运算结果见表3-31 (p60) 。,3.2 特殊的关系运算,1、并运算() 、 差运算(-) 、交运算() 、 笛卡尔积运算()规则,及其应用。 2、投影运算() 、选择运算()和连接运算( )规则,及其应用。,小 结,谢谢!,选择=结果,汇报结束 谢谢观看! 欢迎提出您的宝贵意见!,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

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