关系代数(一)

关系代数(一)

1. 关系代数的五个基本操作

并(Union)

设关系R和S具有相同的关系模式,R和S的并是由属于R或属于S的元组构成的集合,记为R∪S。形式定义如下:
R∪S≡{ t | t∈R ∨ t∈S }
t是元组变量,R和S的元数相同关系中属性个数称为“元数”(arity)。

差(Difference)

设关系R和S具有相同的关系模式,R和S的差是由属于R但不属于S的元组构成的集合,记为R-S。形式定义如下:
R-S≡{ t | t∈R ∧ t∈S }
R和S的元数相同。

笛卡儿积(Cartesian Product)

设关系R和S的元数分别为r和s,则R和S的笛卡尔积是一个(r+s)元的元组集合,每个元组的 前r个分量来自R 的一个元组,后s个分量来自S 的一个元组,记为:R×S,形式定义如下:
R×S ≡{ t | t= <tr, ts> ∧ tr ∈R ∧ ts ∈S }

投影(Projection)

  • 这个操作是对一个关系进行垂直分割,消去某些列,并重新安排列的顺序。
    设关系R是k元关系,R在其分量Ai1,…,Aim(m≤k,i1,…,im为1到k间的整数)上的投影用πi1,…,im(R)表示,它是一个m元元组集合,形式定义如下:
    πi1,…,im(R)≡{ t | t=〈ti1,…,tim〉∧〈t1,…,tk〉∈R }
  • 例如,π3,1(R)表示关系R中取第1、3列,组成新的关系,新关系中第1列为R的第3列,新关系的第2列为R的第1列。如果R的每列标上属性名,那么操作符π的下标处也可以用属性名表示。例如,关系R(A, B, C),那么πC, A(R)与π3, 1(R)是等价的。

选择(Selection)

  • 选择操作是根据某些条件对关系做水平分割,即选取符合条件的元组。条件可用命题公式(即计算机语言中的条件表达式)F表示。
    关系R关于公式F的选择操作用σF(R)(σ读seigama)表示,形式定义如下:
    σF(R)={ t | t∈R ∧ F(t)= true }
    σ为选择运算符,σF( R)表示从R中挑选满足公式F为真的元组所构成的关系。
  • 例如,σ2>ˊ3ˊ(R)表示从R中挑选第2个分量值大于3的元组所构成的关系。书写时,为了与属性序号区别起见,常量用引号括起来,而属性序号或属性名不要用引号括起来。

2. 示例:

图2.1有两个关系R和S 关系R中第二行应该是f,图2.2的(a)、(b)表示R∪S和R-S。(c)表示R×S,此处R和S的属性名相同,就应在属性名前注上相应的关系名,例如R.A、S.A等。图2.2的(d)表示πC,A(R),即π3,1(R)。(e)表示σB=ˊbˊ(R)。
图2.1
两个关系
图2.2
关系代数操作的结果

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码上夏雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值