SQL数据库关系代数中的除法运算
2016-03-08 19:34
218 查看
数据库考试中经常会出现关系运算题目
而一般的加减乘运算相对比较简单,通常不会直接出题
比较容易乱的是除法
认真看下面这段中的图,很容易就理解出除法的
除法运算的定义:
这个概念的描述的非常抽象,刚开始学习的同学完全不知所云。这里通过一个实例来说明除法运算的求解过程
设有关系R、S 如图所示,求R÷S 的结果
求解步骤过程:
第一步:找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影(即将Y列取出);所得结果如下
第二步:被除关系R中与S中不相同的属性列是X ,关系R在属性(X)上做取消重复值的投影为{X1,X2};
第三步:求关系R中X属性对应的像集Y
根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示
第四步:判断包含关系
R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。对比即可发现:
X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1;
而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2 ,
而一般的加减乘运算相对比较简单,通常不会直接出题
比较容易乱的是除法
认真看下面这段中的图,很容易就理解出除法的
除法运算的定义:
这个概念的描述的非常抽象,刚开始学习的同学完全不知所云。这里通过一个实例来说明除法运算的求解过程
设有关系R、S 如图所示,求R÷S 的结果
求解步骤过程:
第一步:找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影(即将Y列取出);所得结果如下
第二步:被除关系R中与S中不相同的属性列是X ,关系R在属性(X)上做取消重复值的投影为{X1,X2};
第三步:求关系R中X属性对应的像集Y
根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示
第四步:判断包含关系
R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。对比即可发现:
X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1;
而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2 ,
相关文章推荐
- Redis应用场景
- 用redis实现支持优先级的消息队列
- sql学习-postgresql
- redis在mac上的安装
- Mysql常用命令总结
- mysql创建存储过程及事件模板
- mysql slave to master
- mysql在5.17上版本不重启主库进行主从复制。
- mac下修改mysql登录密码
- oracle 11g 报 ORA-00119: invalid specification for system parameter LOCAL_LISTENER错误
- Linux下基于源代码方式安装MySQL 5.6
- Flume学习应用:Java写日志数据到MongoDB
- MongoDB学习-入门
- 144 mysql 索引
- mysql命令行连接数据库
- 第二讲 数据库系统结构抽象
- oracle之单行函数
- sql语句建立数据库表
- mysql 表中中文不显示
- Mysql:is not allowed to connect to this MySQL server