【文档说明】Mysql数据库原理及应用项目1--理解数据库--3-关系代数课件.pptx,共(18)页,824.512 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-6055.html
以下为本文档部分文字说明:
《MySQL数据库原理及应用》任务1-4掌握关系代数❖【任务分析】在计算机上存储数据的目的是为了使用数据,当选择好了数据的组织形式后,接下来的任务是明确怎样使用数据。❖【课堂任务】本节要理解对关系模型中的数据进行哪些操作。什么是关系代数传统的集合运算关系
的选择、投影及连接操作关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它用关系的运算来表达查询。是关系数据系统查询语言的理论基础。运算对象、运算符、运算结果是运算的三大要素。关系代
数的运算对象是关系,运算结果亦为关系。关系代数中使用的运算符包括以下4类:集合运算符、专门的关系运算符、比较运算符和逻辑运算符任务1-4掌握关系代数运算符含义运算符含义集合运算符∪-∩×并差交广义笛卡儿积比较运算符>≥<≤=≠大于大于等于小于小于等于等于不等于专门的关系运算符σ
π∞÷选择投影连接除逻辑运算符¬∧∨非与或(一)传统的集合运算❖传统的集合运算是二目运算,包括并、交、差、广义笛卡儿积4种运算。❖1.并(Union)关系R与关系S的并记作:R∪S={t│tRtS},t是
元组变量❖2.差(Difference)关系R与关系S的差记作:R-S={t│tRt∉S}❖3.交(Intersection)关系R与关系S的交记作:R∩S={t│tRtS}❖其结果关系仍为n目关
系,由既属于R又属于S的元组组成。关系的交可以用差来表示,即R∩S=R-(R-S)(一)传统的集合运算4.广义笛卡儿积(ExtendedCartesianProduct)两个分别为n目和m目的关系R和S的广义笛卡儿积是一
个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡儿积有kl×k2个元组。记作:例如,关系R、S见下表(a)、(b)所示(一)传统的
集合运算(c)R∪SABCa1b2c2a2b2c1ABCa1b1c1a1b2c2a2b2c1a1b3c2(d)R∩S(f)RXS(e)R-SR.AR.BR.CS.AS.BS.Ca1b1c1a1b2c2a1b1c1a1b3c2a1b1c1a2b2c1a1b2c2a1b2c2a
1b2c2a1b3c2a1b2c2a2b2c1a2b2c1a1b2c2a2b2c1a1b3c2a2b2c1a2b2c1ABCa1b1c1❖专门的关系运算包括选择、投影、连接、除等。1.选择(Selection)选择又称为限制(Restriction),它是在关系R中选择满足给定条件的诸元组,
记作:σF(R)={t|tRF(t)='真'}其中,F表示选择条件,它是一个逻辑表达式,取逻辑值为“真”或“假”。逻辑表达式F的基本形式为:X1θY1[ΦX2θY2…]【例1.4】查询数学系学生的信息。σsdept='数学系
'(Student)【例1.5】查询年龄小于20岁的学生信息。σsage<20(Student)选择运算是从行的角度进行的运算。(二)专门的关系运算设有一个学生-课程数据库,它包括以下内容。其关系模式如下。▪Student(sno,sname,ssex,sage,sdep
t)▪Course(cno,cname)▪Score(sno,cno,degree)snosnamessexsagesdept000101李晨男18信息系000102王博女19数学系010101刘思思女18信息系010102王国美女20物理系02
0101范伟男19数学系cnocnamesnocnodegreeC1数学000101C190C2英语000101C287C3计算机000101C372C4制图010101C185010101C242020101C370studentcoursescore(二)专门的关系运算2.投影(Pro
jection)关系R上的投影是从R中选择出若干属性列组成新的关系,记作:πA(R)={t[A]|tR}其中,A为R中的属性列。投影操作是从列的角度进行的运算。投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就
可能出现重复元组,关系操作将自动取消相同的元组。【例1.6】查询学生的学号和姓名。πsno,sname(Student)【例1.7】查询学生关系Student中都有哪些系,即查询学生关系Student在所在系属性
上的投影。πsdept(Student)(二)专门的关系运算❖练习:查询年龄大于19岁的男生的学号及姓名。πsno,sname(σsage>19∧ssex=‘男’(Student))3.连接(Join)连接也称为θ连接,它是从两
个关系的笛卡儿积中选取属性间满足一定条件的元组,记作:其中A和B分别为R和S上数目相等且可比的属性组,θ是比较运算符。连接运算是从R和S的笛卡儿积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上的值满足比较关系θ的元组。连接运算中有两种最为重要也最为常
用的连接:▪等值连接▪自然连接(二)专门的关系运算ቅ𝑅∞𝑆𝐴𝜃𝐵={𝑡𝑟𝑡𝑠|𝑡𝑟∈𝑅∧𝑡𝑠∈𝑆∧𝑡𝑟[𝐴]𝜃𝑡𝑠[𝐵]ABCBEa1b15b13a1b26b27a2b38b310a2b412b32b52AR.BCS
.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310(一般连接)CERS(二)专门的关系运算等值连接θ为“=”的连接运算称为等值连接,它是从关系R与S的笛卡儿积
中选取A、B属性值相等的那些元组,等值连接为:自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,即若R和S具有相同的属性组B,则自然连接可记作:(二)专门的关系运算ቅ𝑅∞𝑆𝐴=𝐵={𝑡𝑟𝑡𝑠|𝑡𝑟∈
𝑅∧𝑡𝑠∈𝑆∧𝑡𝑟[𝐴]=𝑡𝑠[𝐵]ൟ𝑅∞𝑆={𝑡𝑟𝑡𝑠|𝑡𝑟∈𝑅∧𝑡𝑠∈𝑆∧𝑡𝑟[𝐴]=𝑡𝑠[𝐵](二)专门的关系运算ABCBEa1b15b13a1b26b
27a2b38b310a2b412b32b52(等值连接)AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32..RBSBRS=R∞S(自然连接)ABCEa1b153a1b267a2B3810a2B382
(二)专门的关系运算关系代数操作举例(强化训练)设学生-课程数据库中有3个关系。学生关系:S(Sno,Sname,Ssex,Sage)课程关系:C(Cno,Cname,Teacher)学习关系:SC(Sno,
Cno,Degree)(1)查询学习课程号为C3号课程的学生学号和成绩。πSno,Degree(σCno='C3'(SC))(2)查询学习课程号为C4课程的学生学号和姓名。πSno,Sname(σCno='C4'(S∞SC))(3)查询学习课程
名为maths的学生学号和姓名。πSno,Sname(σCname='maths'(S∞SC∞C))(二)专门的关系运算关系代数操作举例(强化训练)设学生-课程数据库中有3个关系。学生关系:S(Sno,Sname,Ssex,Sage)课程关系:C(Cno,Cname,Teacher
)学习关系:SC(Sno,Cno,Degree)(4)查询学习课程号为C1或C3课程的学生学号。πSno(σCno='C1'∨Cno='C3'(SC))(5)查询不学习课程号为C2的学生的姓名和年龄。πSname,Sage(S)-πSname,Sage(σCno=
'C2'(S∞SC))课堂总结本项目内容主要带领大家学习了数据库中关系的运算,包括并、交、差、广义笛卡尔积、选择、投影、连接等。要求大家加强复习,增进理解,牢固掌握各种关系的运算方法及各种运算的综合运用。志存高远自强不息