为了说明选择关系运算,这里假设有学生关系student,如下表所 示
学号 981001 991001 991002 201002 201003 姓名 姜英奇 张丹 雷拓 苏湘婷 萧易寒 性别 男 女 男 女 男 出生年月 77-6-26 78-1-3 78-8-28 80-1-10 81-10-9 入学成绩 512 419 579 558 520
例:从学生关系student中查询入学成绩大于520分的。
运算式为
? 入学成绩
? 520
( student ) 或 ? 5 ? 520 ( student )
运算结果如下表所示
学号 991002 姓名 雷拓 性别 男 出生年月 78-8-28 入学成绩 579
201002
苏湘婷
女
80-1-10
558
例:从学生关系student中查询性别为女的。 运算式为
?
性别 ? '女 '
( student ) 或 ?
3?女
( student )
运算结果如下表所示
学号 991001 201002 姓名 张丹 苏湘婷 性别 女 女 出生年月 78-1-3 80-1-10 入学成绩 419 558
(2)投影(Projection) 定义 关系R上的投影操作是从R中选择出若干属性列组成新的关系。 记作
?
A
( R ) ? {t [ A ] | t ? R }
其中 A为 R中的属性列投影操作是从列的角度进行的运算,即对 关系R进行垂直分割,消去某些列,并重新安排列的顺序,再删 去重复的元组。
例:从学生关系student中查询学生姓名和入学成绩两个属性信息。 运算式为
? 姓名 , 入学成绩 ( student ) 或 ? 2 .5 ( student )
姓名 姜英奇 张丹 雷拓 苏湘婷 萧易寒 入学成绩 512 419 579 558 520
运算结果如右表所示
(3)连接(Join)
定义 连接是指从两个
关系的笛卡儿积中选取属性值满足一定条件的 元组。记作
R ? S | A ? B ? {t r t s | t r ? R ? t s ? S ? t r [ A ]? t s [ B ]}
?
其中A,B分别为 R和 S上可比的属性组,θ是比较运算符。连 接运算从R和S的笛卡儿积R×S中选取R关系在A属性组上的值 与S关系在B属性组上值满足比较关系的θ元组。
连接运算中两种最为 重要最为常用的连接
等值连接 自然连接
θ为“=”的连接运算称为等值连接。它是从关系R和S的笛卡儿积 中选取A,B属性值相等的那些元组。 即等值连接为
R ? S | A ? B ? { t r t s | t r ? R ? t s ? S ? t r [ A ] ? t s [ B ]}
?
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的 分量必须是相同的属性组,并且要在结果中把重复的属性去掉。 即若R和S具有相同的属性组B。 则自然连接可记作
?
R ? S | ? {t
str
| t r ? R ? t s ? S ? t r [ A ] ? t s [ B ]}
一般的连接操作是从行的角度进行运算。但自然连接还需要取消 重复列,所以是同时从行和列的角度进行运算。
例:设有关系R和关系S如下表 R ? S | R .学号 ? S .学号 求 和 求解结果见下图。
关系 R
学号 971101 971102 981102 992101 姓名 张宾 王雷 许宁 姜江 性别 出生年月 男 78-9-9 女 78-8-10 男 79-2-17 女 80-11-14
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-35948-5.html
感谢美帝让我军练兵