关系代数的七个扩充操作-及其深刻内涵
2013-09-01 09:43
447 查看
现实需求推动,问题推动,概念的发展过程。
现实需求推动:广义投影、外连接、外部并、聚集操作
问题推动:改名、赋值(这两个是从技术的角度进行化简)
五个基本操作-->四个组合操作-->七个扩充操作。
在整个知识链中的地位?
这是SQL语言的数学基础、深刻理解关系代数对SQL的深刻理解有帮助,为以后的SQL做准备。
1、改名
改名可以使关系代数能清晰地表达其语义,就像画思维导图的效果一样,解决问题前先将问题清晰明了地表达出来,而命名是一种非常简单有效的方法,难怪《代码大全2》中这么强调命名的重要性,这对化简是非常重要的。
2、广义投影
广义投影使用算术函数对投影进行扩展。这其实就是投影的扩展,以更加适应现实的要求、化简、辅助的作用。
3、赋值
书本上写的:“通过赋值给临时变量,可以将关系代数表达式分开写,达到将复杂的表达式化整为零,成为简单的表达式”
自己的理解:高中代数时学习了整体替换的方法,在面向对象思想中也有方法、类、包的概念,这样其实是模块化,封装繁杂的细节,这样看问题的观点就会放在各个模块上而不是繁杂的细节上,达到化简的目的。
4、外连接
是在自然连接的基础上扩展的。将自然连接缺失的元组加上来。
5、外部并
这里注意外连接和外部并的区别,外连接是在自然连接的关系上;外部并是没有连接,直接并的。
6、半连接
7、聚集操作
这是关系代数的统计功能,也是适应现实需求的,加上这个功能后,也才是完备的。
现实需求推动:广义投影、外连接、外部并、聚集操作
问题推动:改名、赋值(这两个是从技术的角度进行化简)
五个基本操作-->四个组合操作-->七个扩充操作。
在整个知识链中的地位?
这是SQL语言的数学基础、深刻理解关系代数对SQL的深刻理解有帮助,为以后的SQL做准备。
1、改名
改名可以使关系代数能清晰地表达其语义,就像画思维导图的效果一样,解决问题前先将问题清晰明了地表达出来,而命名是一种非常简单有效的方法,难怪《代码大全2》中这么强调命名的重要性,这对化简是非常重要的。
2、广义投影
广义投影使用算术函数对投影进行扩展。这其实就是投影的扩展,以更加适应现实的要求、化简、辅助的作用。
3、赋值
书本上写的:“通过赋值给临时变量,可以将关系代数表达式分开写,达到将复杂的表达式化整为零,成为简单的表达式”
自己的理解:高中代数时学习了整体替换的方法,在面向对象思想中也有方法、类、包的概念,这样其实是模块化,封装繁杂的细节,这样看问题的观点就会放在各个模块上而不是繁杂的细节上,达到化简的目的。
4、外连接
是在自然连接的基础上扩展的。将自然连接缺失的元组加上来。
5、外部并
这里注意外连接和外部并的区别,外连接是在自然连接的关系上;外部并是没有连接,直接并的。
6、半连接
7、聚集操作
这是关系代数的统计功能,也是适应现实需求的,加上这个功能后,也才是完备的。
相关文章推荐
- 【数据库基础】用SQL语言关键字表示关系代数的交 并 差 内连接 外连接操作
- 【数据库关系模型之关系代数】关系代数的基本操作
- Hibernate 学习笔记 之 多对多关系 及其 级联操作
- Hibernate学习-14:实体之间的关系及其配置,级联操作
- 关系代数θ连接操作与除操作
- Hibernate 学习笔记 之 一对多关系 及其 级联操作
- 关系代数操作之组合与应用训练(习题)
- 理解关系代数中的5个基本操作和4个组合操作。
- 线索二叉树的建立及其遍历访问操作
- 【软考】(六)关系代数
- ListView中BaseAdapter使用CheckBox及其细节操作(8.25)
- 笛卡尔积、除、(外)连接等重要关系代数求解方法 概述
- 关系代数验算 除法
- 数据库关系代数
- django 多对多关系的操作 包含映射表
- 【数据库】关系代数基本运算
- 实验三:单链表及其操作
- UC/OS-II基础知识之信号量及其操作
- (012):LINQ查询操作中的类型关系
- Javascript操作div及其内含对象示例