【文档说明】数据库关系运算课件.ppt,共(31)页,296.500 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-92434.html
以下为本文档部分文字说明:
传统的集合运算•并•差•交•广义笛卡尔积1.并(Union)•R和S–具有相同的目n(即两个关系都有n个属性)–相应的属性取自同一个域•R∪S–仍为n目关系,由属于R或属于S的元组组成R∪S={t|tR∨tS}并(续)ABCa1b1c1a1b2c2a
2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∪S2.差(Difference)•R和S–具有相同的目n–相应的属性取自同一个域R-S
–仍为n目关系,由属于R而不属于S的所有元组组成R-S={t|tR∧tS}差(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S3.交(Intersection)•R和S
–具有相同的目n–相应的属性取自同一个域•R∩S–仍为n目关系,由既属于R又属于S的元组组成R∩S={t|tR∧tS}R∩S=R–(R-S)交(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b
2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∩S4.广义笛卡尔积(ExtendedCartesianProduct)•R–n目关系,k1个元组•S–m目关系,k2个元组•R×S–列
:(n+m)列的元组的集合•元组的前n列是关系R的一个元组•后m列是关系S的一个元组–行:k1×k2个元组•R×S={trts|trR∧tsS}广义笛卡尔积(续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c
2a2b2c1a2b2c1a2b2c1ABCa1b2c2abcRSR×SABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1关系代数•概述•传统
的集合运算•专门的关系运算专门的关系运算•选择•投影•连接•除1.选择(Selection)•1)选择又称为限制(Restriction)•2)选择运算符的含义–在关系R中选择满足给定条件的诸元组σF(R)={t|tR∧F(t)='真'}–F:选择条件,是一个逻辑表达式,基本形式为
:[(]X1θY1[)][φ[(]X2θY2[)]]…•θ:比较运算符(>,≥,<,≤,=或<>)•X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代替;•φ:逻辑运算符(∧或∨)•[]:表示任选项•…:表示上述
格式可以重复下去选择(续)•3)选择运算是从行的角度进行的运算•4)举例设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。σ选择(续)学号Sno姓名Sname性别Ssex年龄Sage所在系Sdept95001李勇男20CS95002刘晨女19IS
95003王敏女18MA95004张立男19IS(a)Student例1例2例4例3例9选择(续)(b)Course课程号课程名先行课学分CnoCnameCpnoCcredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27PAS
CAL语言64例9选择(续)(c)SC学号课程号成绩SnoCnoGrade9500119295001285950013889500229095002380例7例9选择(续)[例1]查询信息系(IS系)全体学生σSdept='IS'(Studen
t)或σ5='IS'(Student)结果:SnoSnameSsexSageSdept95002刘晨女19IS95004张立男19IS选择(续)[例2]查询年龄小于20岁的学生σSage<20(Stu
dent)或σ4<20(Student)结果:SnoSnameSsexSageSdept95002刘晨女19IS95003王敏女18MA95004张立男19IS2.投影(Projection)•1)投影运算符的含义–从
R中选择出若干属性列组成新的关系πA(R)={t[A]|tR}A:R中的属性列2.投影(Projection)•2)投影操作主要是从列的角度进行运算–但投影之后不仅取消了原关系中的某些列,而且还可能取消某
些元组(避免重复行)π投影(续)•3)举例[例3]查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影πSname,Sdept(Student)或π2,5(Student)结果:投影(续)SnameSdept李勇CS刘晨IS王敏MA张立IS投影(续)
[例4]查询学生关系Student中都有哪些系πSdept(Student)结果:SdeptCSISMA3.连接(Join)•1)连接也称为θ连接•2)连接运算的含义–从两个关系的笛卡尔积中选取属性间满足一定条件的元
组RS={|trR∧tsS∧tr[A]θts[B]}•A和B:分别为R和S上度数相等且可比的属性组•θ:比较运算符–连接运算从R和S的广义笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组。AθBtrts连接(续)•3)两类常用连接运算–等
值连接(equijoin)•什么是等值连接–θ为“=”的连接运算称为等值连接•等值连接的含义–从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:RS={|trR∧tsS∧tr[A]=ts[B
]}A=Btrts连接(续)–自然连接(Naturaljoin)•什么是自然连接–自然连接是一种特殊的等值连接•两个关系中进行比较的分量必须是相同的属性组•在结果中把重复的属性列去掉•自然连接的含义R和S具有相同的属性组BRS={|trR∧tsS∧tr[B]=ts[B]}trts连接(
续)•4)一般的连接操作是从行的角度进行运算。自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。AθBRS连接(等值)•5)举例[例5]ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RSAR.BCS.BEa1b15b13a1b26b
27a2b38b310a2b38b32连接(续)自然连接RSABCEa1b153a1b267a2b3810a2b382ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52除(续)•2)除操作是同时从行和列角度进行运算÷RS除(续)ABCa1b1c2a2b3c7a3b
4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2R÷SAa1RS