【教学课件】第二章关系数据库.ppt
《【教学课件】第二章关系数据库.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第二章关系数据库.ppt(105页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章关系数据库2.1关系模型概述关系模型概述2.2关系数据结构关系数据结构2.3关系的完整性关系的完整性2.4关系代数关系代数2.5关系演算关系演算2.6小结小结12.4 关系代数u概述概述u传统的集合运算传统的集合运算u专门的关系运算专门的关系运算2概述1.关系代数关系代数:一一种种抽抽象象的的查查询询语语言言,用用对对关关系系的的运算运算来表达查询来表达查询3.关系代数运算的三个要素:关系代数运算的三个要素:2.运算的三要素:运算的三要素:运算对象,运算符,运算结果运算对象,运算符,运算结果4.关系代数运算的分类:关系代数运算的分类:运算对象关系,运算结果关系,运算符运算对象关系,运算结
2、果关系,运算符四类四类传统的集合运算传统的集合运算并、差、交、广义笛卡尔积并、差、交、广义笛卡尔积专门的关系运算专门的关系运算选择、投影、连接、除选择、投影、连接、除3集合集合运算运算符符-并并差差交交比较比较运算运算符符大于大于大于等于大于等于小于小于小于等于小于等于等于等于不等于不等于运算符运算符含义含义运算符运算符含义含义表表2.4关系代数运算符关系代数运算符专门专门的关的关系运系运算符算符广义笛卡尔积广义笛卡尔积选择选择投影投影连接连接除除逻辑逻辑运算运算符符 非非与与或或42.4 关系代数u概概述述u传统的集合运算传统的集合运算u专门的关系运算专门的关系运算并并交交差差广义笛卡尔积广
3、义笛卡尔积51.并(Union)u设关系设关系R 和和S:具具有有相相同同的的目目n(即即两两个个关关系系都都有有n 个属性)个属性)相应的属性取自同一个域相应的属性取自同一个域则:则:1)关系)关系R 和和S的的并并记为:记为:RS=t|t R t S 结结果果仍仍为为n 目目关关系系,由由属属于于R 或或者者属属于于S 的元组组成的元组组成 6并(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRS72.差(Difference)u设关系设关系R 和和S:具具有有相相同同的的目目n(即即两两个
4、个关关系系都都有有n 个属性)个属性)相应的属性取自同一个域相应的属性取自同一个域则:则:2)关系)关系R 和和S的的差差记为:记为:R-S=t|t R t S结结果果仍仍为为n 目目关关系系,由由属属于于R 而而不不属属于于S 的元组组成的元组组成 8差(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S93.交(Intersection)u设关系设关系R 和和S:具具有有相相同同的的目目n(即即两两个个关关系系都都有有n 个个属性)属性)相应的属性取自同一个域相应的属性取自同一个域则:则:3)关系)关系R 和和S的的交交记为
5、:记为:RS=t|t R t S 用差表示:用差表示:RS=R(R-S)仍为仍为n 目关系,由目关系,由既属于既属于R 又属于又属于S 的元组组成的元组组成 10交(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR S114.广义笛卡尔积(广义笛卡尔积(ExtendedCartesianProduct)u有有2个关系个关系R和和S,若,若关系关系R:n 目关系目关系(有(有n个属性),有个属性),有k1个元组个元组关系关系S:m目关系目关系(有(有m个属性),有个属性),有k2个元组个元组则:则:关系关系R和和S的广义
6、笛卡尔积的广义笛卡尔积记作:记作:RS=trts|tr Rts S共有共有k1k2个元组(行)个元组(行),每个元组有每个元组有nm列:列:前前n 列是关系列是关系R 的一个元组的一个元组后后m 列是关系列是关系S 的一个元组的一个元组12广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR SABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1132.4.2 专门
7、的关系运算u概述概述u传统的集合运算传统的集合运算u专门的关系运算专门的关系运算选择选择投影投影连接连接除除14常用的几个记号(1)R,t R,tAi设关系模式为设关系模式为R(A1,A2,An),它的一个关它的一个关系设为系设为R。t R 表示表示t 是是R 的一个元组,的一个元组,tAi则则表示元组表示元组t 中相应于属性中相应于属性Ai 的一个分量的一个分量关系关系R:学生(学号,学生(学号,姓名,性别,院系姓名,性别,院系)R的一个元组的一个元组t:(1001,李明,男,信息学院),李明,男,信息学院)tA1表示分量表示分量1001,tA2表示分量表示分量李明李明15常用的几个记号(2
8、)A,tA,A若若A=Ai1,Ai2,Aik,其中,其中Ai1,Ai2,Aik是是A1,A2,An中的一部分,则中的一部分,则A称为称为属属性列性列或或域列域列;tA=(tAi1,tAi2,tAik)表示)表示元组元组t在属性列在属性列A上诸分量的集合上诸分量的集合。A则表示则表示A1,A2,An中去掉中去掉Ai1,Ai2,Aik后剩余的属性组。后剩余的属性组。16例如:R的一个元组的一个元组t:(1001,李明,男,信息学院),李明,男,信息学院)tA=(1001,李明,李明)关系关系R:学生(学号,学生(学号,姓名,性别,院系姓名,性别,院系)A=学号学号,姓名姓名 ,则称,则称A为为属性
9、列属性列或或域列域列。=性别性别,院系院系 A17常用的几个记号R 为为n 目关系,目关系,S 为为m 目关系目关系,tr R,ts S,称为元组的连接。称为元组的连接。(3)trts trts它是一个它是一个n+m 列列的元组,前的元组,前n 个分量为个分量为R 中的一个中的一个n 元组,后元组,后m 个分量为个分量为S 中的一个中的一个m 元组。(元组。(R和和S的广义笛卡尔积的广义笛卡尔积)18ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1b2c2a1b3c2a2b2c
10、1RSABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1trts19常用的几个记号(4)象集)象集Zx给给定定一一个个关关系系R(X,Z),X 和和Z 为为属属性性组组。当当 tXx 时时,x 在在 R中中的的象象集集(ImagesSet)为:)为:Zx=tZ|t R,tX=x 它表示它表示R 中属性组中属性组X 上值为上值为x 的诸元组在的诸元组在Z上分量的集合。上分量的集合。20象集举例u例例给定关系给定关系R(X,Z)如下:)如下:ABa1b1a1b2a2b3a1的象集为的象集为b1,b2a2的象集为的象集为b3ABCa1b
11、1c1a1b2c2a2b3c2a1的象集为的象集为(b1,c1),(b2,c2)a2的象集为的象集为(b3,c2)211.选择(Selection)u选择:指的是选择:指的是在关系在关系R中选择满足给定条件中选择满足给定条件的元组的元组,记作:,记作:F(R)=t|t R F(t)=真真u这里,这里,F是逻辑表达式。是逻辑表达式。u选择运算选择运算实际上是实际上是从关系从关系R中选取使逻辑中选取使逻辑表达式表达式F为真的元组。为真的元组。u是从是从行行的角度进行的运算:的角度进行的运算:22选择(续)u举例举例设有一个学生设有一个学生-课程数据库,包括:课程数据库,包括:学生关系学生关系Stu
12、dent课程关系课程关系Course选修关系选修关系SC23选择(续)学学号号Sno姓姓名名Sname性性别别Ssex年年龄龄Sage所所在在系系Sdept95001李勇李勇男男20CS95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19IS(a)Student24选择(续)(b)Course课程号课程号课程名课程名先行课先行课学分学分CnoCnameCpnoCcredit1数据库数据库542数学数学23信息系统信息系统144操作系统操作系统635数据结构数据结构746数据处理数据处理27PASCAL语言语言6425选择(续)(c)SC学学号号课课程程号号成成
13、绩绩SnoCnoGrade950011929500128595001388950022909500238026选择(续)例例1查询信息系(查询信息系(IS系)全体学生系)全体学生SnoSnameSsexSageSdept95002刘晨刘晨女女19IS95004张立张立男男19ISSdept=IS(Student)或或5=IS(Student)结果:结果:27选择(续)例例2查询年龄小于查询年龄小于20岁的学生。岁的学生。SnoSnameSsexSageSdept95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19ISSage20(Student)或或420(S
14、tudent)结果:结果:282.投影(Projection)u投影:投影:从从R 中选择出若干中选择出若干属性列属性列组成新的关系,组成新的关系,A(R)=tA|t RA:R中的属性列中的属性列是从是从列列的角度进行运算:的角度进行运算:29投影(续)即即求求Student关关系系在在学学生生姓姓名名和和所所在在系系两两个属性上的投影。个属性上的投影。SnameSdept李勇李勇CS刘晨刘晨IS王敏王敏MA张立张立ISu例例3查询查询学生的学生的姓名姓名和和所在系:所在系:结果:结果:Sname,Sdept(Student)或或2,5(Student)30投影(续)例例4查询学生关系查询学生
15、关系Student中都有哪些系。中都有哪些系。SdeptCSISMA结果:结果:Sdept(Student)即查询即查询Student关系在关系在所在系所在系属性上的属性上的投影投影:注意:注意:投影结果中,投影结果中,取消重复的元组。取消重复的元组。31投影(续)u例例5查询开设了哪些课程(课程名)。查询开设了哪些课程(课程名)。课程名课程名Cname数据库数据库数学数学信息系统信息系统操作系统操作系统数据结构数据结构数据处理数据处理PASCAL语言语言即查询查询Course关系在关系在课程名课程名上的投影:上的投影:Cname(Course)323.连接(Join)u也称为也称为连接,是从
16、两个关系的笛卡尔积中连接,是从两个关系的笛卡尔积中选取选取属性间满足一定条件的元组属性间满足一定条件的元组,记作:,记作:ABtrtsR S=|tr Rts StrAtsB其中,A 和和B 分别为分别为R 和和S 上上度数相等且度数相等且可比的属性组可比的属性组,为比较运算符。为比较运算符。连接运算从运算从R 和和S 的广义笛卡尔积的广义笛卡尔积RS 中中选取选取R 关系在关系在A 属性组上的值属性组上的值与与S 关系在关系在B 属性组上值属性组上值满足比较关系的元组满足比较关系的元组。33连接的分类等值连接u等值连接(等值连接(equijoin)是指是指为为“”的连接运算的连接运算从从关关系
17、系R与与S的的广广义义笛笛卡卡尔尔积积中中选选取取A、B属性值相等的那些元组属性值相等的那些元组,即等值连接为:,即等值连接为:A=BtrtsR S=|tr Rts StrA=tsB34连接的分类自然连接u自然连接(自然连接(Naturaljoin)是一种特殊的等值连接是一种特殊的等值连接要求两个关系中进行比较的分量必须是要求两个关系中进行比较的分量必须是相同相同的属性组的属性组并且在结果中并且在结果中把重复的属性列去掉把重复的属性列去掉若若R 和和S 具具有有相相同同的的属属性性组组B,则则自自然然连连接接表示如下:表示如下:trtsR S=|tr Rts StrB=tsB35连接(续)u关
18、系关系R和关系和关系S如下如下(P62)ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RS36连接(续)AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310 CERS例例6把满足条件把满足条件“R中中C属性值属性值S中中E属性值属性值”的的元组元组连接起来:连接起来:37连接(续)AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32R.B=S.B 等值连接等值连接R S例例7把满足条件把满足条件“R中中B属性值属性值S中中B属性值属性值”的的元组元组连接起来:连接起来:38
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第二 关系 数据库
限制150内