天天看点

数据库复习笔记(2)------关系代数

数据库复习笔记(2)------关系代数

    • 分类
    • 传统的集合运算
      • 并运算(∪)
      • 交运算( ∩ )
      • 差运算(-)
      • 广义笛卡尔积(×)
    • 专门的关系运算
      • 选择(σ)
      • 投影(π)
      • 连接(条件连接)
        • 等值连接
        • 自然连接(特殊的等值连接)
        • 外连接
        • 左外连接
        • 右外连接
      • 除(÷)

分类

传统的集合运算

并(∪)、交(∩)、差(-)、笛卡尔积(×)

专门的关系运算

选择(σ)、投影(π)、连接、除(÷)

基本的五种关系运算

选择(σ)、投影(π)、并(∪)、差(-)、笛卡尔积(×)

传统的集合运算

并运算(∪)

R∪S = { t|t 属于R∨t 属于S }

交运算( ∩ )

R∩S = { t|t 属于R∧t 属于S }

差运算(-)

R -S = { t|t属于R∧t不属于S }

广义笛卡尔积(×)

R×S = { (tr,ts) |tr属于R ∧ ts属于S }

专门的关系运算

象集:用于表示关系中某一属性上取值固定后,诸元组在其余属性上的分量集合。

选择(σ)

σF® = {t|t属于R∧F(t)= ‘真’}

F(t)为选择条件,即在关系R中选择满足给定条件的元组。

例σmno = ‘01’ (Student)表示查询Student表中,mno属性值为01的元组

属性还可以由其在表头中所在位置来表示

多个限制条件可以由∧符号连接

投影(π)

πA® = { t[A] | t 属于R }

A:R中的属性列

t[A]表示取出A属性的那一列或几列

即从R中选择出若干属性列组成新的关系

**投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组来避免重复行 (自动取消重复行!)

**

连接(条件连接)

从两个关系的笛卡尔积中选取属性间满足一定条件的元组。

选取的属性分别为两个关系上度数相等且可比的属性组

等值连接

选取等值的条件,令不同关系的中的某个属性值相同为条件进行连接,当条件不同时连接的结果也不相同,两个关系可以没有相同的属性列

自然连接(特殊的等值连接)

自然连接必须要有相同的属性列才能进行,以相同的属性作为等值条件,等值连接之后要去除相同的属性列

外连接

如果把舍弃的元组也保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接。

左外连接

如果只把左边关系R中要舍弃的元组保留就叫做左外连接。

右外连接

如果只把右边关系S中要舍弃的元组保留就叫做右外连接。

除(÷)

两个关系中的某个或某些属性出自相同的域集,记为A

除运算是将被除的关系中,除去这些属性A后对剩下的属性进行筛选,选出其取值所在的象集中包含有除数关系中对A的投影的部分。

数据库复习笔记(2)------关系代数

在关系R中,A可以取四个值{a1,a2,a3,a4}

a1的象集为 {(b1,c2),(b2,c3),(b2,c1)}

a2的象集为 {(b3,c7),(b2,c3)}

a3的象集为 {(b4,c6)}

a4的象集为 {(b6,c6)}

S在(B,C)上的投影为:

{(b1,c2),(b2,c1),(b2,c3) }

只有a1的象集包含了S在(B,C)属性组上的投影, 所以:

R ÷ S = { a1 }