【学习数据库】关系代数

Dianne ·
更新时间:2024-11-10
· 883 次阅读

文章目录1.关系代数的符号表示2.传统的集合运算(1)并(2)交(3)差(4)广义笛卡儿积3.专门的关系运算(1)选择(2)投影(3)连接等值连接自然连接(4)除 1.关系代数的符号表示
名称 符号
U
-
广义笛卡儿积 ×
选择 σ
投影 π
连接
÷
大于 >
小于 <
大于等于
小于等于
等于 =
不等于
2.传统的集合运算

关系R

学号 姓名
182056218 梁志文
182056204 温阳

关系S

学号 姓名
182056222 温阳
182056227 郭昊程

关系T

学号 成绩
182056218 100
182056204 60
(1)并

概念:关系R和关系S的所有元组的合并,再删去重复的元组,组成一个新关系
新关系RUS

学号 姓名
182056218 梁志文
182056204 温阳
182056227 郭昊程
(2)交

概念:在两个关系R与S中取相同的元组,组成一个新关系
新关系R∩S

学号 姓名
182056204 温阳
(3)差

概念:在关系R中删去与关系S中相同的元组,组成一个新关系
新关系R-S

学号 姓名
182056218 梁志文
(4)广义笛卡儿积

概念:将关系R和关系T交错组合,组成一个新关系

学号 姓名 学号 成绩
182056218 梁志文 182056218 100
182056204 温阳 182056218 100
182056218 梁志文 182056204 60
182056204 温阳 182056204 60

新关系的行数是两个关系行数的乘积,列数是两个关系列数的和

3.专门的关系运算 (1)选择

概念:在指定的关系中,按给定的条件选取其中的若干个元组(行),组成一个新的关系
σ姓名=‘梁志文’( R )

学号 姓名
182056218 梁志文
(2)投影

概念:在指定的关系R中,根据从左到右的次序,按照指定的若干属性及它们的顺序取出各列,再删去结果中重复元组,组成一个关系
π姓名( R )

姓名
梁志文
温阳
(3)连接

概念:从两个关系R、T 的笛卡儿积中选取满足连接条件的那些元组
在这里插入图片描述
这里为了区分两个关系的学号,r.学号代表R关系的学号,t.学号代表T关系的学号

学号 姓名 学号 成绩
182056204 温阳 182056218 100
182056218 梁志文 182056204 60
等值连接

在这里插入图片描述

学号 姓名 学号 成绩
182056218 梁志文 182056218 100
182056204 温阳 182056204 60

当条件是等于时,这种连接称为等值连接

自然连接

在等值连接中,等号两边的属性是同一属性,去掉重复列的关系。因此自然连接使用在R和T有公共属性列的情况

R⋈T

学号 姓名 成绩
182056218 梁志文 100
182056204 温阳 60
(4)除

最后一个重点,一定理解并记牢
我们重新建几个表
A表

姓名 选课
梁志文 语文
温阳 语文
梁志文 数学

B表

选课 学分
语文 3.0
数学 4.5

注意:要进行除法的两个关系必须有公共属性(列)
A÷B

姓名
梁志文

如何得到除法的结果呢?
1.将表A按非公共列分组,即姓名相同的为一组

姓名
梁志文
温阳

2.求表A的象集

姓名 选课
梁志文 语文
梁志文 数学
温阳 语文

3.将B投影到公共属性,即选课

选课
语文
数学

4.若第二步得到的表包含第三步得到的表,则对应姓名行添加到结果中

姓名
梁志文

作者:程序鸡



关系代数 数据 学习 关系 代数 数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号