您好,欢迎访问三七文档
第3章关系代数刘鹤年编写第3章关系代数第3章关系代数刘鹤年编写集合运算符∪-∩×并差交笛卡尔积比较运算符>≥<≤=大于大于等于小于小于等于等于不等于运算符含义运算符含义关系代数运算符3.1集合运算传统的集合运算包含并、差、交、广义笛卡尔积等。其运算是从关系的水平方向(表中的行)来进行的。3.1集合运算第3章关系代数刘鹤年编写3.1.1并运算设:关系R与关系S有相同的属性,并且对应属性有相同的域。则关系R和S的并将产生一个包含R、S中所有不同元组的新关系。记作:R∪S。并操作的示意图如下:3.1集合运算第3章关系代数刘鹤年编写3.1.1并运算(续)在实际运用中,并运算可实现插入新元组的操作。3.1集合运算第3章关系代数刘鹤年编写喜欢跳舞的学生关系RSnameSex李敬女高全英女吴秋娟女穆金华男张欣欣女王婷女喜欢唱歌的学生关系SSnameSex赵成刚男张峰男吴秋娟女穆金华男孙政先男王婷女吕文昆男孙炜女喜欢跳舞或喜欢唱歌的学生关系R∪SSnameSex李敬女高全英女吴秋娟女穆金华男张欣欣女王婷女赵成刚男张峰男孙政先男吕文昆男孙炜女第3章关系代数刘鹤年编写3.1.2差运算设:关系R与关系S有相同的属性,并且对应属性有相同的域。则关系R和S的差,将产生一个包含所有属于R但不属于S的元组新关系。记作:R-S。差运算是有序的:R-S不等于S-R。3.1集合运算第3章关系代数刘鹤年编写3.1.2差运算(续)差操作的示意图如下:3.1集合运算第3章关系代数刘鹤年编写3.1.2差运算(续)3.1集合运算(R中有S中没有的元组)第3章关系代数刘鹤年编写喜欢跳舞的学生关系RSnameSex李敬女高全英女吴秋娟女穆金华男张欣欣女王婷女喜欢唱歌的学生关系SSnameSex赵成刚男张峰男吴秋娟女穆金华男孙政先男王婷女吕文昆男孙炜女喜欢跳舞但是不喜欢唱歌的学生R-SSnameSex李敬女高全英女张欣欣女第3章关系代数刘鹤年编写3.1.3交运算设:关系R与关系S有相同的属性,并且对应属性有相同的域。则关系R和S的交,将产生一个包含所有既属于R也属于S的元组的新关系。记作:R∩S。由于R∩S=R–(R-S),或者R∩S=S–(S-R),所以R∩S运算是一个复合运算。3.1集合运算第3章关系代数刘鹤年编写3.1.3交运算(续)交操作的示意图,如图3-3所示。第3章关系代数刘鹤年编写3.1.3交运算(续)3.1集合运算(属于R而且也属于S)第3章关系代数刘鹤年编写喜欢跳舞的学生关系RSnameSex李敬女高全英女吴秋娟女穆金华男张欣欣女王婷女喜欢唱歌的学生关系SSnameSex赵成刚男张峰男吴秋娟女穆金华男孙政先男王婷女吕文昆男孙炜女既喜欢跳舞也喜欢唱歌的学生R∩SSnameSex吴秋娟女穆金华男王婷女第3章关系代数刘鹤年编写3.1.4笛卡尔积运算设:关系R为n列(n个属性),k1行(k1个元组)关系S为m列(m个属性),k2行(k2个元组)则关系R和S的笛卡尔积,是R中每个元组与S中每个元组连接组成的新关系。记作:R×S。注意:新关系的属性个数等于n+m,元组个数等于k1*k2。3.1集合运算第3章关系代数刘鹤年编写3.1.4笛卡尔积运算(续)3.1集合运算(R中每个元组与S中每个元组连接)第3章关系代数刘鹤年编写学生关系RSIDSname2005216001赵成刚2005216002李敬课程关系SCIDCname16020010C语言程序设计16020011图像处理16020012网页设计学生选课新关系R×SSIDSnameCIDCname2005216001赵成刚16020010C语言程序设计2005216001赵成刚16020011图像处理2005216001赵成刚16020012网页设计2005216002李敬16020010C语言程序设计2005216002李敬16020011图像处理2005216002李敬16020012网页设计例:第3章关系代数刘鹤年编写选择(Selection)投影(Projection)连接(Join)除关系数据库是用数学方法处理数据的,关系间可以进行各种运算,以支持对数据库的各种操作。我们介绍其中最基本的三种运算:3.2特殊的关系运算3.2特殊的关系运算第3章关系代数刘鹤年编写专门的关系运算符σπ÷选择投影连接除逻辑运算符∧∨非与或运算符含义运算符含义关系代数运算符(续)3.2特殊的关系运算第3章关系代数刘鹤年编写3.2.1投影运算投影是选择关系R中的若干属性组成新的关系,并去掉了重复元组,是对关系的属性进行筛选,记作ΠA(R)。其中A为关系R的属性列表,各属性间用逗号分隔。投影运算的结果往往比原有关系属性少,或改变原有关系的属性顺序,或改变原有关系的属性名等,投影运算结果不仅消除了原关系中的某些列,而且还要去掉重复元组。3.2特殊的关系运算第3章关系代数刘鹤年编写3.2.1投影运算(续)投影运算的示意图如图下:3.2特殊的关系运算第3章关系代数刘鹤年编写编号系名姓名性别出生年月03004计算机系韩东男1979.10.0102001外语系刘玲女1979.08.0203001计算机系王冬男1978.08.0704001数学系姜瑞青男1981.06.0205001电子工程系翁超雷男1980.08.1005002电子工程系田茉莉女1976.09.0203002计算机系宋江明男1981.01.0303003计算机系邵林文贺女1979.05.04系名姓名计算机系韩东外语系刘玲计算机系王冬数学系姜瑞青电子工程系翁超雷电子工程系田茉莉计算机系宋江明计算机系邵林文贺Sql查询命令:Select系名,姓名fromstudent例:查询学生所在系及姓名Π系名,姓名(student)3.2特殊的关系运算student第3章关系代数刘鹤年编写3.2.2选择运算选择是根据给定的条件选择关系R中的若干元组组成新的关系,是对关系的元组进行筛选。记作δF(R)其中F是选择条件,是一逻辑表达式。选择运算结果往往比原有关系的元组个数少,它是原关系的一个子集,但关系模式不变。第3章关系代数3.2特殊的关系运算第3章关系代数刘鹤年编写3.2.2选择运算(续)选择运算示意图如下:3.2特殊的关系运算第3章关系代数刘鹤年编写Select*fromstudentwhere系名=计算机系编号系名姓名性别出生年月03004计算机系韩东男1979.10.1002001外语系刘玲女1979.08.0203001计算机系王冬男1978.08.0704001数学系姜瑞青男1981.06.0205001电子工程系翁超雷男1980.08.1005002电子工程系田茉莉女1976.09.0203002计算机系宋江明男1981.01.0303003计算机系邵林文贺女1979.05.04编号系名姓名性别出生年月03004计算机系韩东男1979.10.1003001计算机系王冬男1978.08.0703002计算机系宋明男1981.01.0303003计算机系邵林文贺女1979.05.043.2特殊的关系运算第3章关系代数刘鹤年编写3.2.3连接运算连接是根据给定的条件,从两个已知关系R和S的笛卡尔积中,选取满足连接条件(属性之间)的若干元组组成新的关系。记作:(R)(S)其中F是选择条件。F3.2特殊的关系运算第3章关系代数刘鹤年编写3.2.3连接运算(续)1.条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。2.相等连接:从关系R与S的笛卡尔积中选取满足等值条件的元组。3.自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满足等值条件的元组,但新关系不包含重复的属性。4.外连接3.2特殊的关系运算第3章关系代数刘鹤年编写连接运算(续)[例]关系R和关系S如下所示:RSR.AR.BR.CS.BS.Ea1b15b13a1b15b27a1b15b310a1b15b32a1b15b52a1b26b13a1b26b27a1b26b310a1b26b32a1b26b52a2b38b13a2b38b27a2b38b310a2b38b32a2b38b52a2b412b13a2b412b27a2b412b310a2b412b32a2b412b52第3章关系代数刘鹤年编写连接运算(续)条件连接:RS的结果如下:C<ER.AR.BR.CS.BS.Ea1b15b13a1b15b27a1b15b310a1b15b32a1b15b52a1b26b13a1b26b27a1b26b310a1b26b32a1b26b52a2b38b13a2b38b27a2b38b310a2b38b32a2b38b52a2b412b13a2b412b27a2b412b310a2b412b32a2b412b52第3章关系代数刘鹤年编写连接运算(续)等值连接RS的结果如下:R.B=S.BR.AR.BR.CS.BS.Ea1b15b13a1b15b27a1b15b310a1b15b32a1b15b52a1b26b13a1b26b27a1b26b310a1b26b32a1b26b52a2b38b13a2b38b27a2b38b310a2b38b32a2b38b52a2b412b13a2b412b27a2b412b310a2b412b32a2b412b52第3章关系代数刘鹤年编写连接运算(续)自然连接RS的结果如下:3.2特殊的关系运算R.AR.BR.CS.BS.Ea1b15b13a1b15b27a1b15b310a1b15b32a1b15b52a1b26b13a1b26b27a1b26b310a1b26b32a1b26b52a2b38b13a2b38b27a2b38b310a2b38b32a2b38b52a2b412b13a2b412b27a2b412b310a2b412b32a2b412b52第3章关系代数刘鹤年编写3.2.4除法运算设有关系R(X,Y)和S(Y),其中X,Y可以是单个属性或属性集,R÷S的结果组成的新关系为T。R÷S运算规则:如果在∏(R)中能找到某一行u,使得这一行和S的笛卡尔积含在R中,则T中有u。除法运算示意图如下:3.2特殊的关系运算第3章关系代数刘鹤年编写3.2.4除法运算(续)[例]设关系R、S分别为下图的(a)和(b),R÷S的结果为图(c)数据库系统概论分析:在关系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)属性组上的投影所以R÷S={a1}第3章关系代数刘鹤年编写谢谢!
本文标题:数据库――关系运算
链接地址:https://www.777doc.com/doc-3632293 .html