数据库系统---关系代数
关系代数是一种抽象的查询语言,它用对关系的运算来表达查询
传统的集合运算
并(Union)
R:
S:
R∪S :
差(Difference)
R:
S:
R - S:
交(Intersection)
R:
S:
R∩S:
笛卡尔积(Cartesian Product)
R:
S:
R×S :
列数相加,行数相乘
专门的关系运算
选择(Selection)
选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算
查询信息系(IS系)全体学生
查询年龄小于20岁的学生
投影(Projection)
投影操作主要是从列的角度进行运算
查询学生的姓名和所在系
连接(Join)
一般的连接操作是从行的角度进行运算。
自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。
一般连接:先做笛卡尔积,再通过筛选条件删除不符合的选项
等值连接:先做笛卡尔积,再通过筛选条件(相关列相等)删除不符合的选项
自然连接:先做笛卡尔积,再通过筛选条件(相关列相等)删除不符合的选项
外连接:
如果把悬浮元组也保存在结果关系中,而在其他属性上填空值(Null),就叫做外连接
左外连接(LEFT OUTER JOIN或LEFT JOIN)
只保留左边关系R中的悬浮元组
右外连接(RIGHT OUTER JOIN或RIGHT JOIN)
只保留右边关系S中的悬浮元组
R:
S:
一般连接:
等值连接:
自然连接:
外连接
除运算(Division)
R:
S:
R÷S:
License:
CC BY 4.0