关系代数运算
1. 运算符分类
集合:并( U )、交( ∩ )、差( — )、笛卡尔积( × )
比较:大于( >)、小于(<)、等于( = )、大于等于( ≥ )、小于等于( ≤ )、不等于( ≠ )
逻辑:与( ^ )、或( v )、非( ┐)
专门的关系运算符:选择( σ ) 、投影( π )、∞ (连接)、 除( ÷ )
注:并相容性——某些关系代数操作,如并、差、交等需满足“并相容性”。其定义如下:
(1) 关系R和关系S的属性数目必须相同;
(2) 对于任意i,关系R的第i个属性的域必须和关系S的第i个属性的域相同
2. 集合操作运算符
-
U( 并 )
-
∩( 交 )
-
–( 差 )
-
×( 笛卡尔积 )
3. 专门的关系运算符
3.1 σ( 选择 )
在指定的关系R中,按给定的条件P选取其中的若干个元组组成新的关系运算。 记作: σ P ( R ) σ_P(R) σP(R)
3.2 π ( 投影 )
在指定的关系R中,根据给定的若干属性X选出对应的列组成新的关系。 记作:
Π X ( R ) Π_X(R) ΠX(R)
3.3 ÷ ( 除 )
除运算的前提要求:若R÷S,那么要求S集合的属性是R集合属性的子集。
除运算的运算结果:若R÷S,那么结果的属性是R-S,结果中的属性值与S的笛卡尔积必须在R中
3.4 连接
3.4.1 连接、等值连接
数据的查询往往需要涉及到多个表,就需要用到连接操作将多个表连接起来。
连接操作是指从 关系R和关系S的笛卡尔积中, 选取R中属性X与S中属性Y之间满足 θ 条件的元组构成的关系
① X Y为连接条件
② 属性 X 和 Y 具有可比性
③ θ 是比较运算符,当θ为“=”,称为等值连接
3.4.2 自然连接
对于关系R、S,在等值连接的情况下,当连接属性X与Y具有相同的属性名时,则关系R与S的连接称为自然连接
- 等值连接与自然连接的区别:等值连接不会删除相同的列,但是自然连接会删除相同的列
3.5 外连接(自然连接+失配元素)
3.5.0 为何需要外连接
3.5.1 左外连接(自然连接+左表失配元素)
3.5.2 右外连接(自然连接+右表失配元素)
3.5.3 全外连接(自然连接+左右表失配元素)