计算机二级C语言公共基础知识,以及习题总结(七)关系代数
二级C语言公共基础知识,以及习题总结(一) | 跳转 |
---|---|
二级C语言公共基础知识,以及习题总结(二)树和二叉树 | 跳转 |
二级C语言公共基础知识,以及习题总结(三)查找和排序 | 跳转 |
二级C语言公共基础知识,以及习题总结(四)程序设计和软件工程基础 | 跳转 |
二级C语言公共基础知识,以及习题总结(五)数据库设计基础 | 跳转 |
二级C语言公共基础知识,以及习题总结(六)数据模型 | 跳转 |
二级C语言公共基础知识,以及习题总结(七)关系代数 | 跳转 |
关系运算类型
1、传统的集合运算:
(1)并(U)
记为R U S。注意:R 和 S的域相同。
设关系R和关系S具有相同的目n(即两个关系都有n个属性),且相应的属性取自同一个域,则关系R与关系S的并由属于R且属于S的元组组成。其结果关系仍为n目关系。
记作:
R∪S={t|t∈R∨t∈S}
(2)差(-)
记为R - S。注意:R和S的域相同。
这里不会把第一行减掉因为第一行是属性(域),第二行开始的内容是(元组)
设关系R和关系S具有相同的目n,且相应的属性取自同一个域,则关系R与关系S的差由属于R而不属于S的所有元组组成。其结果关系仍为n目关系。
记作:
R-S={t|t∈R∧t∉S}
(3)交(∩)
设关系R和关系S具有相同的目n,且相应的属性取自同一个域,
则关系R与关系S的交由既属于R又属于S的元组组成。其结果关系仍为n目关系。
记作:
R∩S={t|t∈R∧t∈S}
2、关系模型的四个基本运算:
(1)插入:R U R’
(2)删除:R U R’
(3)修改:(R - R’) U R’
(4)查询
查询新运算:
(1)投影(π)
(2)选择(σ)
(3)笛卡尔积(x)
记为R x S 也记为 R >< S
左边表的每一行都与另外一个表的每一行组合
3、关系代数的扩充运算:
(1)交
记为R ∩ S 交运算是由基本运算推导而得:R ∩ S = R - (R - S )
(2)除
记为T ÷ R 或 T / R =S
除运算不是基本运算,它可以由基本运算推导而出。设关系R有域r,关系S有域s,此时有:
S在R当中有几个
(3)连接与自然链接
其中i为R中的域,j为S 中的域。i与j需要具有相同域。
如果i=j,称此链接为等值链接。
等值的链接并且i和j是相同的属性则成为自然链接。
4、相关练习
B(选择-投影-连接)
A
A
A
B
E(左边表的每一行都和另外一个表的每一行组合)
D
A(π代表投影 ^ 是并且 v 是或 σ表示选择)
C
A (A=B ^ C > 4 ^ D>3)
C
B
A
二级C语言公共基础知识,以及习题总结(一) | 跳转 |
---|---|
二级C语言公共基础知识,以及习题总结(二)树和二叉树 | 跳转 |
二级C语言公共基础知识,以及习题总结(三)查找和排序 | 跳转 |
二级C语言公共基础知识,以及习题总结(四)程序设计和软件工程基础 | 跳转 |
二级C语言公共基础知识,以及习题总结(五)数据库设计基础 | 跳转 |
二级C语言公共基础知识,以及习题总结(六)数据模型 | 跳转 |
二级C语言公共基础知识,以及习题总结(七)关系代数 | 跳转 |