关系运算
设有表R和S
R∪S(并)结果为(即将两表合并,去除重复记录):
A | B | C |
a1 | b1 | c1 |
a1 | b2 | c2 |
a2 | b2 | c1 |
a1 | b3 | c2 |
R-S(差)结果为(即属于R但不属于S):
A | B | C |
a1 | b1 | c1 |
R∩S(交)结果为(即既属于R又属于S):
A | B | C |
a1 | b2 | c2 |
a2 | b2 | c1 |
R×S(笛卡尔积)结果为(R中的每个元组分别与S中的元给组成新的关系):
R.A | R.B | R.C | S.A | S.B | S.C |
a1 | b1 | c1 | a1 | b2 | c2 |
a1 | b1 | c1 | a1 | b3 | c2 |
a1 | b1 | c1 | a2 | b2 | c1 |
a1 | b2 | c2 | a1 | b2 | c2 |
a1 | b2 | c2 | a1 | b3 | c2 |
a1 | b2 | c2 | a2 | b2 | c1 |
a2 | b2 | c1 | a1 | b2 | c2 |
a2 | b2 | c1 | a1 | b3 | c2 |
a2 | b2 | c1 | a2 | b2 | c1 |
其它:>(大于)、≥(大于等于)、<(小于)、≤(小于等于)、=(等于)、<>(不等于)
特殊的关系运算
σ(选择)。如:σA='a1'(R)。相当于select * from R where A='a1'
π(投影)。如:πA,B(R)。相当于select A,B From R。
∞(接连)。R∞S。(F是选择条件,无条件连接就是两个关系的笛卡尔积)包括4种连接:
F
1.条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。
2.相等连接:从关系R与S的笛卡尔积中选取满足等值条件的元组。
3.自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满足等值条件的元组,但新关系不包含重复的属性。
4.外连接:是在连接条件的某一边添加一个符号“*”,其连接结果是为符号所在边添加一个全部由“空值”组成的行。
设有关系R和S如下:
R和S的笛卡尔积为,所有连接的结果都是该集的子集,即从笛卡尔积中按条件选择。
R.A | R.B | R.C | S.B | S.E |
a1 | b1 | 5 | b1 | 3 |
a1 | b1 | 5 | b2 | 7 |
a1 | b1 | 5 | b3 | 10 |
a1 | b1 | 5 | b3 | 2 |
a1 | b1 | 5 | b5 | 2 |
a1 | b2 | 6 | b1 | 3 |
a1 | b2 | 6 | b2 | 7 |
a1 | b2 | 6 | b3 | 10 |
a1 | b2 | 6 | b3 | 2 |
a1 | b2 | 6 | b5 | 2 |
a2 | b3 | 8 | b1 | 3 |
a2 | b3 | 8 | b2 | 7 |
a2 | b3 | 8 | b3 | 10 |
a2 | b3 | 8 | b3 | 2 |
a2 | b3 | 8 | b5 | 2 |
a2 | b4 | 12 | b1 | 3 |
a2 | b4 | 12 | b2 | 7 |
a2 | b4 | 12 | b3 | 10 |
a2 | b4 | 12 | b3 | 2 |
a2 | b4 | 12 | b5 | 2 |
条件连接R∞S结果为:
C<E
R.A | R.B | R.C | S.B | S.E |
a1 | b1 | 5 | b2 | 7 |
a1 | b1 | 5 | b3 | 10 |
a1 | b2 | 6 | b2 | 7 |
a1 | b2 | 6 | b3 | 10 |
a2 | b3 | 8 | b3 | 10 |
等值连接R∞S结果为:
R.B=S.B
R.A | R.B | R.C | S.B | S.E |
a1 | b1 | 5 | b1 | 3 |
a1 | b2 | 6 | b2 | 7 |
a2 | b3 | 8 | b3 | 10 |
a2 | b3 | 8 | b3 | 2 |
自然连接R∞S(取公共属性满足等值连接的记录)结果为:
A | B | C | E |
a1 | b1 | 5 | 3 |
a1 | b2 | 6 | 7 |
a2 | b3 | 8 | 10 |
a2 | b3 | 8 | 2 |
÷(除)。除法运算示意图:
例子:设关系R、S分别为下图的(a)和(b),R÷S的结果为图(c)
其他:Ø(非)、∧(与)、∨(或)、