数据库应用之关系代数(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的子集。
查询优化
先选择数据和投影属性后再进⾏行连接(连接效率⽐比筛选低)
关系演算:描述法表示某一集合
**可使用与或非,蕴含,谓词,量词
无限集合会越界,不安全,因此这是不合法的**
关系演算与关系代数之间的关系
例题:
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的子集。
查询优化
先选择数据和投影属性后再进⾏行连接(连接效率⽐比筛选低)
关系演算:描述法表示某一集合
**可使用与或非,蕴含,谓词,量词
无限集合会越界,不安全,因此这是不合法的**
关系演算与关系代数之间的关系
例题:
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- 数据库链接字符串查询网站
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置
- Oracle 数据库 临时数据的处理方法
- 数据库分页查询语句数据库查询
- 最近比较流行的数据库挂马
- Oracle 手动创建数据库步骤详解
- 分割超大Redis数据库例子