您的位置:首页 > 数据库

数据库应用之关系代数(relational algebra)

2015-11-23 23:33 513 查看
关系代数表达式的五个基本算子

1.选择(selection):即选择某些行。代码:select ··· from ··· where。表达式:σ<条件>(<表>)。

2.投影(projection):即选择某些列。代码:select ··· distinct from ··· (distinct有去重的功能)。表达式:Π<属性>(<表>)。

3.叉乘(cross product):笛卡尔积,就像矩阵相乘。表达式:<表>X<表>。

4.做差(set-differences):减去交集。表达式:<表>-<表>。

5.并集(union):将两表合起来,注意去重。表达式:<表>U<表>。

6.更名(rename):将B改名为A。表达式:ρ(A,B).

重要的组合算子

1.交集(intersection)。

2.连接(join):▷◁

自然连接(natural join):R叉乘S,选择公共属性匹配的记录,投影去除重复的公共属性。

(1)对于多个公共属性的,每个公共属性都要匹配;

(2)对于没有公共属性的,连接相当于叉乘;

(3)对于所有属性都是公共属性的,连接相当于交集。

条件连接(conditional join):R叉乘S,根据条件进行选择。

3.除法(division):性质:R ÷ S = q,但是 q X S 只是R的子集。





查询优化

先选择数据和投影属性后再进⾏行连接(连接效率⽐比筛选低)

关系演算:描述法表示某一集合

**可使用与或非,蕴含,谓词,量词

无限集合会越界,不安全,因此这是不合法的**

关系演算与关系代数之间的关系



例题:





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息