第2讲02 关系数据库原理(基本关系运算)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章 关系数据库原理-基本关系运算
8
第3讲 一、传统集合运算
2.传统的集合运算——合并
R
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
S
A
B
C
a1
b2
c2
a1
b3
c2
a2
b2
c1
A
B
C
R∪S a1
b1
c1
a1
b2
c2
a2
b2
c1
a1
b3
c2
第1章 关系数据库原理-基本关系运算
9
第3讲 一、传统集合运算
结果: Sno
Sname
Ssex Sage
Sdept
95002 95004
刘晨 第1章 女关本系原数理据库19的基 IS
张立
男
19
IS
第1章 关系数据库原理-基本关系运算
18
第3讲 二、专门的关系运算
2.基本关系运算符——投影
投影运算: ΠA(R)
投影运算也是单目运算,它从一个关系R中按所需顺序 选区若干各属性构成新关系,该新关系的元组数必然 小于等于原R中的元组数,因为要从从中去掉在新关系 模式下重复的元组。设A是要从R中投影出的属性子集 ,则对关系R按属性子集A做投影运算记作ΠA(R) 。
乘积运算:R × S 设有一个具有n个属性的关系R和另一个具有m 个属性的关系S,则他们的迪卡尔积仍是一个 关系,该关系的结构是R和S的结构之连接,即 前n个属性来自R,后m个属性来自S,属性个数 等于n+m,该关系的值是由R中的每个元组连接S 中的每个元组所构成元组的集合。若设R和S分 别具有K1和K2个元组,则R×S中元组的个数为 K1×K2 ,运算符为× 。 记为T=R×S。
24
第3讲 课余作业布置
✓ 预习
第1章“关系的完整性和关系规范化”的内容 。
请思考下列问题
1. 函数依赖有哪些类型? 2. 什么叫关系的规范化? 3. 1NF、2NF和3NF之间有什么关系?
第1章 关系数据库原理-基本关系运算
25
第1章 关系数据库原理-基本关系运算
2
复习 第3讲
✓ 关系应具备什么性质?
答:(1)关系中每一个属性值都是不可分解的。 (2)关系中不允许出现相同的行。 (3)关系中不允许出现相同的列。 (4)关系中没有行序、没有列序。
第1章 关系数据库原理-基本关系运算
3
第3讲
第1章 关系数据库原理
——基本关系运算
教学内容 ✓ 传统的集合运算
关系操作
合并、交集、求 差、乘积
✓ 专门的关系运算 (重点)
选择、投影、连 接
第1章 关系数据库原理-基本关系运算
4
第3讲 第1章 关系数据库原理
——基本关系运算
学习目标
认知目标:
理解关系操作的含义 了解传统的集合运算
能力目标:
掌握关系代数中的基 本关系运算:选择、 投影、连接(重点)
第2讲
第1章 关系数据库原理
——基本关系运算 主讲人:连家剑
SQL Server 2005
复习 第3讲
✓ 什么是关键字/码/键?
答:是能用来惟一标识元组的属性或属性组合。
✓ 什么是主关键字/主码/主键?
答:被指定为关键字的候选关键字。
✓ ER图转化为关系模式的原则是什么?
答:(1)每个实体转换为一个关系。 (2)每个联系也转换成一个关系。 (3)有相同码的关系可以合并。
在连接运算中,按照字段值对应相等为条件进行的连 接操作称为等值连接,去掉重复属性的等值连接称为
自然连接,记作R1∞R2。
第1章 关系数据库原理-基本关系运算
21
第3讲
R
A
B
C
a1
b1
c1
a2
b2
c2
a3
b2
c1
R∞T
A
B
a1
b1
a2
b2
a3
b2
T
C
D
E
c1
d2
e2
c2
d3
e2
c3
d2
e1
C
D
E
σ
第1章 关系数据库原理-基本关系运算
17
第3讲
学号 Sno 95001
95002
95003
95004
姓名 Sname 李勇 刘晨 王敏 张立
性别 Ssex 男 女 女 男
年龄 Sage
20
19
18
19
所在系 Sdept CS
IS
MA
IS
[例] 查询信息系(IS系)全体学生
σSdept = ‘IS’ (Student)
R×S
a1 a1
b2 c2 b2 c2
a1 a1
b2 b3
c2 c2
a1 b2 c2 a2 b2 c1
a2 b2 c1 a1 b2 c2
a2 b2 c1 a1 b3 c2
第1章 关系数a据2 库原b2理-基本c1关系a运2 算 b2 c1
15
第3讲 二、专门的关系运算
专门的关系运算包括选择、投影、连接和 除四种,对应的运算符分别用δ、Π。
右外连接:就是在查询结果集中显示右边表中所有的 记录,以及左边表中符合条件的记录。
全外连接:就是在查询结果集中显示左右表中所有的 记录,包括符合条件和不符合条件的记录。
第1章 关系数据库原理-基本关系运算
23
第3讲
R
ABC abc bbf cad
来自百度文库
S
BCD bcd bce adb efg
R与S的自然连接
含义
大于 大于等于 小于 小于等于 等于 不等于
含义
非 ∧与 ∨或
第1章 关系数据库原理-基本关系运算
7
第3讲 一、传统集合运算
2.传统的集合运算——合并
合并运算:R∪S 设两个关系R和S具有完全相同的结构(模式) ,则R和S的并仍是一个关系,该关系的结构与 R或S的结构相同,该关系的值是R中所有元组 与S中所有元组共同组成的集合,运算符为∪ 。 记为T=R∪S。
c1
d2
e2
c2
d3
e2
c1
d2
e2
第1章 关系数据库原理-基本关系运算
22
第3讲 二、专门的关系运算
4.基本关系运算符——外连接
如果关系R和S作自然连接时,把原本该舍弃的元 组也保留在新的关系中,同时在这些元组新增加 的属性上填上空值(NULL),这种操作称为“外连 接”操作。
左外连接:就是在查询结果集中显示左边表中所有的 记录,以及右边表中符合条件的记录。
这是从列的角度进行的运算,相当于对关系进行垂直 分解。
π
第1章 关系数据库原理-基本关系运算
19
第3讲
✓ [例] 查询学生的姓名和所在系
即求Student关系上学生姓名和所在系两个 属性上的投影
πSname,Sdept(Student)
或 π2,5(Student)
结果: Sname
Sdept
3.传统的集合运算——交集
交集运算:R∩S 设两个关系R和S具有完全相同的结构(模式) ,则R和S的交仍是一个关系,该关系的结构与 R或S的结构相同,该关系的值是R和S中共同具 有的元组的集合,运算符为∩ 。 记为T=R∩S。
第1章 关系数据库原理-基本关系运算
10
第3讲 一、传统集合运算
第1章 关系数据库原理-基本关系运算
5
第3讲
一、传统集合运算
1.关系操作
✓ 对关系型数据库进行查询统计时,需要查询到用户感 兴趣的数据,这就需要对关系及关系间进行一定的运 算。
✓ 关系操作是集合操作,操作的对象和结果都是集合。 关系的基本数据操作包括四种:
数据查询 数据插入 数据删除 数据修改
ABCD abcd abce cadb
R与S的全外连接
R与S的左连接
ABCD
ABCD
abcd
abcd
abce
abce
cadb
cadb
b b f nul l
b b f nul l
nul e f g l
第1章 关系数据库原理-基本关系运算
R与S的右连接
ABCD abcd abce cadb nul e f g l
第1章 关系数据库原理-基本关系运算
14
第3讲 一、传统集合运算
5.传统的集合运算——乘积(迪卡尔积)
A
B
C
A
B
C
a1
b1
c1
a1
b2
c2
R a1
b2
c2
S a1
b3
c2
a2
b2
c1
a2
b2
c1
A
B
C
A
B
C
a1 b1 c1 a1 b2 c2
a1 b1 c1 a1 b3 c2
a1 b1 c1 a2 b2 c1
李勇
CS
刘晨
IS
王敏
MA
张立
IS
第1章 关系数据库原理-基本关系运算
20
第3讲 二、专门的关系运算
3.基本关系运算符——自然连接
自然连接运算: R1∞R2
连接运算属于二目运算,它把两个关系R1和R2按相应 属性值的比较条件连接起来,它是R1和R2的迪卡尔积 的一个子集。
连接过程是通过连接条件来控制的,而连接条件必须 表现出两个表中的公共属性名或具有相同语义、可比 的属性。一般格式为:表1.公共属性=表2.公共属性。 例如,部门表与职工表的连接条件为:部门.部门号= 职工.部门号。
3.传统的集合运算——交集
R
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
S
A
B
C
a1
b2
c2
a1
b3
c2
a2
b2
c1
A
B
C
R ∩ S a1
b2
c2
a2
b2
c1
第1章 关系数据库原理-基本关系运算
11
第3讲 一、传统集合运算
4.传统的集合运算——求差
求差运算:R-S 设两个关系R和S具有完全相同的结构(模式) ,则R和S的差仍是一个关系,该关系的结构与 R或S的结构相同,该关系的值是从R中去掉在S 中同时出现的元组后,由R中剩余元组所组成 的集合,运算符为- 。 记为T=R-S。R-S=R-(R∩S)
第1章 关系数据库原理-基本关系运算
16
第3讲 二、专门的关系运算
1.基本关系运算符——选择
选择运算: σF(R) 选择运算是单目运算,它从一个关系R中选择 出满足给定条件的所有元组,并同R具有相同 的结构。设F(t)为元组逻辑表达式,对关系R 按F(t)条件作选择运算,记作δ F(t)(R) 。 选择运算是从关系R中选取使逻辑表达式F为真 的元组,是从行的角度进行的运算。
如果用关系代数来表示关系的操作,可以有选择、投
影、连接、除、交、差、并、积等。
第1章 关系数据库原理-基本关系运算
6
第3讲
关系代数
运算符
含义
运算符
集 ∪并
比>
合 运 算 符
-差
较 运
∩交
算
× 笛卡尔积 符
≥ < ≤ =
<>
运算符
含义
运算符
专门的关 σ 选择 逻辑运算 系运算符 π 投影 符
连接 ÷除
第1章 关系数据库原理-基本关系运算
12
第3讲 一、传统集合运算
4.传统的集合运算——求差
R
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
S
A
B
C
a1
b2
c2
a1
b3
c2
a2
b2
c1
A
B
C
R -S
a1
b1
c1
第1章 关系数据库原理-基本关系运算
13
第3讲 一、传统集合运算
5.传统的集合运算——乘积(迪卡尔积或笛卡尔 连接、交叉连接)