关系数据库:专门关系运算

专门关系运算有:选择,投影,连接,除运算。

1.选择从关系中找出满足给定条件的所有元组称为选择,其中条件是用逻辑表达式给出的,逻辑表达式为真时元组被选取。
选择运算记为δF(R),其中R为一个关系,F为布尔函数,该函数可以包含比较运算符和逻辑运算符。
2.从关系中挑选若干属性组组成的新关系称为投影。是从列的角度进行的运算,相当于对关系进行垂直分解,如果新的关系中包含重复元组,则要删除重复元祖。
3.连接。连接是将两个关系属性名拼接成一个更宽的关系,生成的新的关系中包含满足连接条件的元组。分为θ连接(当θ为‘=‘的时候为等值连接)和F连接,以及自然连接。
4,。关系的除运算

举个栗子:
来说明怎么求以上四个关系
假设有四个关系分别为R,S,U,V

关系数据库:专门关系运算
对于投影:πA,C®:
就是在关系R中找到属性A和C,然后把这两个属性组成新的关系,如果有重复的元组,就把重复的去除就ok

对于选择:δB=‘5’(S):找到关系S,在S中找到属性为B且值等于5的元组组成新的关系就ok

对于连接:
等值连接
R▷◁S
[ 3]=[2]
首先找到关系R,S,并对R,S中的属性从左到右依次从1开始进行编号,例如属性R中的A,B,C依次编号为1,2,3,S中的B,C,D依次编号为1,2,3,所以连接要求【3】=【2】其实就是要求找出R中属性C和S中属性C值相等的元组,在进行拼接

自然连接:R▷◁S
对于自然连接,先求出关系R和S的笛卡尔积(R×S),再挑选他们公共属性中值相等的元组,再去掉重复的相等的那些列。

对于除运算:U÷V:
首先找被除关系U,看U中除了U,V中已经存在的公共属性还有那些属性,例如上面关系中U除了C,D还剩下A,B
然后开始找A,B的象集,也就是所有元组中相同的A,B属性的值对应的C,D的值的集合,U中(a,b)的象集为{(c,d),(e,f) },(c,a)的象集为(c,d)
再看关系V在C,D上的投影为{(c,d),(e,f) }
显然只有象集(a,b)包含了V在C,D上的投影,所以(a,b)为符合要求的结果