数据库技术课程复习3---关系代数

0.学习前言

数据库技术是一门值得好好学习掌握的课程,一起加油鸭!


数据库技术课程复习3---关系代数

1.传统的集合运算

数据库技术课程复习3---关系代数

并(Union)

将两个关系的元组做合并操作(去重)。
运算前提条件:两者属性相同,即列相同
数据库技术课程复习3---关系代数

差(Difference)

第一个关系表减去第二个关系表中重复的元组。
运算前提条件:两者属性相同,即列相同
数据库技术课程复习3---关系代数

交(Intersection)

得到两个关系表的交集
运算前提条件:两者属性相同,即列相同
数据库技术课程复习3---关系代数

笛卡尔积

运算前提条件:无特殊要求
R×S
数据库技术课程复习3---关系代数

2.专门的关系运算

数据库技术课程复习3---关系代数
示例表:
数据库技术课程复习3---关系代数
数据库技术课程复习3---关系代数
数据库技术课程复习3---关系代数

选择(Selection)

符号表示: σF(R)={ttR&F(t)=}\sigma_F(R)=\{t|t\in R \& F(t)='真' \},其中F(t)F(t)是选择条件,是一个逻辑表达式
选择运算是从关系R中选取使逻辑表达式F为真的元组,是从的角度进行的运算
示例:
数据库技术课程复习3---关系代数

投影(Projection)

从R中选择出若干属性组成新的关系,投影操作主要是从列的角度进行运算。返回结果会进行自动去重。
符号表示:ΠA(R)={t[A]tR}\Pi_A(R)=\{t[A]|t\in R\},A是R中的属性列
示例:
投影两列(没有去掉IS的重复,因为Sname不同)
数据库技术课程复习3---关系代数
投影一列(自动去重了两个相同的IS)
数据库技术课程复习3---关系代数

连接(Join)

连接也成为θ\theta连接,此运算从两个关系的笛卡尔积中选取属性间满足一定条件的元组。

数据库技术课程复习3---关系代数
等值连接:
数据库技术课程复习3---关系代数
自然连接:自然连接是一种特殊的等值连接。在结果中把重复的属性列去掉。
数据库技术课程复习3---关系代数
外连接:如果把舍弃的元组也保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接(OUTER JOIN)。
左外连接
如果只把左边关系R中要舍弃的元组保留就叫做左外连接(LEFT OUTER JOIN或LEFT JOIN)
右外连接
如果只把右边关系S中要舍弃的元组保留就叫做右外连接(RIGHT OUTER JOIN或RIGHT JOIN)。
数据库技术课程复习3---关系代数
数据库技术课程复习3---关系代数

除(Division)

定义比较复杂,直接看示例
数据库技术课程复习3---关系代数
常用于构造临时表,进行查询操作
数据库技术课程复习3---关系代数

3.练习题

1
数据库技术课程复习3---关系代数
2
数据库技术课程复习3---关系代数
3
数据库技术课程复习3---关系代数
4
数据库技术课程复习3---关系代数