分享

4-1-2

 昵称233866 2009-11-07


4.1.1 关系代数的五个基本操作

关系代数中的操作可以分为两类:
   ·传统的集合操作:并、差、交、笛卡儿积(乘法),笛卡儿积的逆运算(除法)。
   ·扩充的关系操作:对关系进行垂直分割(投影)、水平分割(选择)、关系的结合(连接、自然连接)等。

1.并(Union)

(1)描述
  设关系R和S具有相同的关系模式,R和S的并是由属于R或属于S的元组构成的集合,记为R∪S。
(2)形式定义
  R∪S≡{t | t∈R∨t∈S},t是元组变量,R和S的元数相同。

2.差(Difference)

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

3.笛卡儿积(Cartesian Product)

(1)描述
  设关系R和S的元数分别为r和s,定义R和S的笛卡儿积是一个(r+s)元的元组集合,每个元组的前r个分量(属性值)来自R的一个元组,后s个分量来自S的一个元组,记为R×S。
(2)形式定义
   ①R×S≡{ t | t=<tr,ts> ∧ tr∈R ∧ ts∈S }
   ②此处tr、ts中r,s为上标。若R有m个元组,S有n个元组,则R×S有m×n个元组。

4.投影(Projection)

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

5.选择(Selection)

(1)描述
  选择操作是根据某些条件对关系做水平分割,即选取符合条件的元组。条件可用命题公式(即计算机语言中的条件表达式)F表示。
(2)F中的两种成分
   ①运算对象:常数(用引号括起来),元组分量(属性名或列的序号)。
   ②运算符:算术比较运算符(<,≤,>,≥,=,≠,也称为θ符),逻辑运算符(∧,∨,┐)。
(3)形式定义
   ①σF(R)={ t | t∈R ∧ F(t)= true }
   ②σ为选择运算符,σF(R)表示从R中挑选满足公式F为真的元组所构成的关系。
(4)说明
  σ2>'3'(R)表示从R中挑选第2个分量值大于3的元组所构成的关系。书写时,为了与属性序号区别起见,常量用引号括起来,而属性序号或属性名不要用引号括起来。

6.实例



  已知有两个关系R和S,求R∪S、R-S、R×S、πC,A(R)和σB>'4'(R)。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多