携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天
关系代数讲解
关系运算的运算对象是关系,运算结果亦是关系,关系代数的运算符包括两类:传统的集合运算和专门的关系运算两类。
传统的集合运算是从关系的水平方向,即行的角度来进行
而专门的关系代数不仅涉及行,还涉及列。
传统的集合运算
传统的集合运算是二目运算,包括并,差,交,笛卡尔积4种运算。
1、并 :R∪S
计算两个关系在集合理论上的并集,即给出关系R和S(两者有相同列数),R∪S的元组包括R和S所有元组的集合。
use 学生管理1
select *
from dbo.学生1
where 籍贯 like '吉林省%'
union
select *
from dbo.学生1
where 籍贯 like '湖南省%'
2、交 :R∩S
算两个关系集合理论上的交集,即给出关系R和S(两者有相同列数),R∩S的元组包括R和S相同元组的集合。
use 学生管理1
select *
from dbo.学生1
where 籍贯 like '吉林省%'
intersect
select *
from dbo.学生1
where 性别='女'
3、差 :R-S:属于R而不属于S的元组
计算两个关系的区别的集合,即给出关系R和S(两者有相同列数),R-S的元组包
括R中有而S中没有的元组的集合。
use 学生管理1
select *
from dbo.学生1
except
select *
from dbo.学生1
where 性别='女'
4、笛卡尔积 :两个集合分别元素相乘,属性相加:m+n、元组个数相乘:a*b
use 学生管理1
select *
from dbo.学生1,dbo.成绩1
或者
select *
from dbo.学生1 cross join dbo.成绩1
专门的关系运算
1、选择:行操作
2、投影:列操作
3、连接
等值连接
自然连接:行和列的操作都有
4、除运算