关系代数基本运算

基本运算:

1.      并(Union,表示为U):两个表或集合的联合。

例:R1=AB),R2=BCD)。

R1UR2=ABCD)。

注:U集里不包含重复的属性。

2.      差(Difference,表示位-):两个表或集合的区别。

例:R1=AB),R2=BCD)。

R1-R2=A)。

注:-集里的元素个数不能大于初始。

3.      笛卡儿积(Product,表示为X):两个表或集合的组合个数。

1R1=AB),R2=BCD)。

R1xR2=(AB,AC,AD,BBBCBD)

注:R1xR2集的元素个数为R1的元素个数乘R2的元素个数;

2:求S1S2的笛卡儿积?

      

     得:

    

4.      投影(Project,表示为π):从表中抽取特定的列值。

表达式:πMR={ t(M) |t}.

释义:R表示一个关系表;

     T表示R中的一条横向的记录;

     M表示T中的M列的交叉属性值;

    πMR={ t(M) |t}表示在关系表RTM列的一个属性值;

例:如上图中S1S2.求πsno,sname(S1)

既求S1表中列为Sno,Sname的值。

结果如图:

5.      选择(Select,表示为σ--Sigma:从表中选取与给定条件相符的行。

表达式:σA=aR={ t(A)=a |t}.

A表示R表中的一个字段或属性类型;

tR表示R表中的一条记录;

t(A)=a表示记录tA属性的具体值等于a;

σA=aR={ t(A)=a |tR }表示在R表中选择A=a的一条记录;

例:给出S 1S2两张(见上图)表。求S1Sno= No003的那条记录?

 

6.交(Intersection,∩):两个及以上的集合或表中具有相同属性的集合。

7.联接(join,表示为):通过共同属性连接两个表。

 表现在数据库中简单来说是通过字段值相同的条件下,将两个表中的记录连接在一起。

例:给出表S1S2,求S1◁S2

既求 S1中是否有和S2中属性值相同的记录,有则连接;

8.除(Division,表水为÷):除运算需要满足两个条件:表R和表S属性集合要有相同性;R÷S的商是RS非相同属性集合的一个投影的子集,该子集和S的笛卡尔积必须包含在R中。

例:求R÷S

   给出表

第一步:具有相同的属性集

   R=ABCD),S=CD----具有相同的属性集(CD);

 第二步:非相同属性集合的投影;

R1=AB

  

第三步:该子集(R1)和S的笛卡尔积必须包含在R.

R1S的笛卡尔积图为:

R比较发现R1中只(c,a)S的笛卡尔积不在R中,所以删掉,最终的图:

此为R÷S的商。

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 18
    评论
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值