关系代数基本运算


前言:关系代数名称的由来是因为其中含有操作符和操作数,操作数为表,操作符为交、并等。关系代数有分为基于集合的关系代数和基于包的关系代数;关系代数的基本操作有:并、差、除、选择、投影、笛卡尔积等。



1、差


  定义:差即Difference,用符号-表示,表示两个表中不一样的部分。此种计算需要使得运算的两个表具有相同的字段。例如S1-S2是在S1中而不在S2中的记录的集合:


        



2、投影


  定义:从一个关系里面抽取指明的属性(列)。投影运算符是π,该运算作用于关系R将产生一个新关系S,S只具有R的某几个属性列。

  投影运算的一般表达式为:S = πA1, A2, … , An(R)

  S是投影运算产生的新关系,它只具有R的属性A1, A2, … , An所对应的列。

  例如:

    对于关系:


            


    进行投影运算:πStudentNo, StudentName(Student) 结果为:


                



3、选择


  定义:从关系里面抽取出满足给定限制条件的记录。

  即:投影是获得表中的列,而选择是获得表中的行。



4、除


  定义:除运算是同时从关系的水平方向和垂直方向进行运算。例如给定关系R(X,Y)和S(Y,Z),X、Y、Z为属性组。R÷S应当满足元组在X上的分量值x的象集y包含关系S在属性Y上投影的集合。

  其形式定义为:


       


  例如:


                 


  找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影,得到:


                      


  被除关系R中与S中不相同的属性列是X,关系在属性X上做取消重复值的投影为{X1,X2};根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示:


                


  得出结论:R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。可知:X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1;

  而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2 :


                     



5、笛卡尔积


  计算两个关系的笛卡尔积。两个关系R和S的笛卡尔积记作R×S,它的关系模式属性是R和S的模式的并集。R×S是把R和S的元组以所有可能的方式组合起来,因此,R×S拥有的元组数量应该是R的元组数与S的元组数的乘积。

  例如:


            





  • 9
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值