??关系代数是一种过程化查询语言。它包括一个运算的集合,这些运算以一个或两个关系为输入,产生一个新的关系作为结果。关系代数基本运算有:选择、投影、并、集合差、笛卡儿积和更名。在基本运算以外,还有一些其他运算,即集合交、自然连接和赋值。我们将用基本运算来定义这些运算。
??选择、投影和更名运算称为一元运算,因为它们对一个关系进行运算,另外三个运算对两个关系进行运算.因而称为二元运算。
??选择运算符常用σ表示,书写格式如下所示:
??投影运算符常用Π表示,其实质是选取特定要求的列
投影运算返回一个关系,而关系是集合,所以返回关系中的重复行均会被去除!!!
??关系运算的结果仍为一个关系
??顾名思义,并运算是将两个表中满足查询条件的集合合并到一起,得到的是一个删除重复值后的集合
??用—表示的集合差(set-difference)运算使得我们可以找出在一个关系中而不在另一个关系中的那些元组。表达式r-s的结果即一个包含所有在r中而不在s中的元组的关系。
??
??关系代数表达式的结果没有可供我们引用的名字,这一点与数据库中的关系有所不同。如果能给它们赋上名字那将是十分有用的;我们可以通过小写希腊字母 ρ ( p ) \rho(p) ρ(p)表示的更名(rename)运算来完成这一任务。
很复杂(不要求掌握)
??可对投影的属性进行操作后输出最终的关系。
??聚集运算实质上是返回输入值的一个汇集,如:sum(求和),avg(求均值),count(求元素个数),min(求最小值),max(求最大值)等
??外连接可在自然连接基础上创建带空值的元组,避免元组的丢失情况。例子如下: