什么是关系代数
关系代数运算的特点
(1)基于集合,提供了一系列的关系代数操作:并、差、笛卡尔积(广义积)、选择、投影和更名等基本操作。
(2)以及交、连接和关系除等扩展操作,是一种集合思维的操作语言。
(3)输入为一个或者多个关系,输出一个新的关系。
(4)用对关系的运算来表达查询,需要指明所用操作,具有一定的过程性。
关系代数运算的基本操作
(1)集合操作:并、交、差、笛卡尔积
(2)纯关系操作:
为什么要提出关系代数
这是计算机执行程序的基本的思路,同样我们基于这样的思维,要完成数据库的操作,应该怎么做?
关系代数的基本操作
有些关系代数操作,如并、差、交等,需要满足”并相容性“
并相容性
参与运算的两个关系及其相关属性之间有一定的对应性、可比性或意义关联性
定义:关系R与关系S存在相容性,当且仅当:
(1)关系R和关系S的属性数目必须相同;
(2)对于任意i,关系R的第i个属性的域必须和关系S的第i个属性的域相同。
”并“操作
”差“操作
”笛卡尔积“操作
”选择“操作
”投影“操作
关系代数之扩展操作
”交“操作
θ连接
自然连接
就是一种特殊的等值连接,把等值连接之后的表去掉重复的一列属性
习题
应该写成这样
也不能是这样
也可以使用交运算实现
再看一例子