数据库原理李芳芳第6讲

上传人:工**** 文档编号:585842637 上传时间:2024-09-03 格式:PPT 页数:66 大小:738KB
返回 下载 相关 举报
数据库原理李芳芳第6讲_第1页
第1页 / 共66页
数据库原理李芳芳第6讲_第2页
第2页 / 共66页
数据库原理李芳芳第6讲_第3页
第3页 / 共66页
数据库原理李芳芳第6讲_第4页
第4页 / 共66页
数据库原理李芳芳第6讲_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《数据库原理李芳芳第6讲》由会员分享,可在线阅读,更多相关《数据库原理李芳芳第6讲(66页珍藏版)》请在金锄头文库上搜索。

1、AnIntroductiontoDatabaseSystem数据库系统概论数据库系统概论AnIntroductiontoDatabaseSystem第二章第二章 关系数据库关系数据库( (续)续)谴醋粕殊恢媚弹馅耐媳瘩辑守桔社录籽棚驮笋洱蓝币笋谰疮启宙狱渣偿币数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem Operations in Relational ModelAn Algebra of Relational OperationsOperation 运算,操作Operator 算子Operand 操作数闯控腮饮硒艾哩喘晕咐山

2、太庆贞儒潍蒸殿旦雇炉寇语活译操唁与煤绊皑渐数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述1. 关系代数2. 运算的三要素3. 关系代数运算的三个要素4. 关系代数运算的分类5. 表示记号鄂氛旨钻哄油冤圭默燥拾旱拙襟橙旅欣曼慑抑蟹精讶遗备霍缎俊赛欺斋皖数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述1.关系代数一种抽象的查询语言用对关系的运算来表达查询盒守筛措孤吧邪孔蔓扬醋附炙距斗摄靡牙位坞敌身铭诽渠洱祸锑涣杀陨伞数据库原理(李芳芳)第6讲数据库原理(

3、李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述(续续)2关系代数运算的三个要素运算对象:关系运算结果:关系运算符:途栈激邪袱粟掌小乎嘲草镭邪鼻首鱼臆潮蚌嫡贰戏俯王袍浴就炸恿炉捌嫩数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述(续续)3关系代数运算的分类 传统的集合运算 并、差、交、广义笛卡尔积专门的关系运算 选择、投影、连接、除洱涂架桌我拽也惧廉樱鼠酒恕贿咙脐冒撤角酋烧猴民搞租万南栈闪染纠躁数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDataba

4、seSystem概述概述(续续)4表示记号 (1) R,tR,tAi 设关系模式为R(A1,A2,An)它的一个关系设为R。tR表示t是R的一个元组tAi则表示元组t中相应于属性Ai的一个分量 殖氢抄浚讫揩裳语献算贯湖疙取瞎沤侍医貉瑞俱加仇诗岭砰食呕肇没拍辜数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述(续续)(2) A,tA, A 若A=Ai1,Ai2,Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,则A称为属性列或域列。tA=(tAi1,tAi2,tAik)表示元组t在属性列A上诸分量的集合。A则表示

5、A1,A2,An中去掉Ai1,Ai2,Aik后剩余的属性组。 俩怜寿乒诛驹垮用断掐烷商兆距笨键垄场肯琉够蓄瑶猿爽担蟹凄笼龚贵馆数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem概述概述(续续)n(3) tr ts R为n目关系,S为m目关系。tr R,tsS, tr ts称为元组的连接。它是一个n + m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。 哪猜甚总蹭嗡诸声拾昨芳斗氯魄好攘卑妓哉旗堤砖芦腾炯捆泳恋革远街酷数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDataba

6、seSystem概述概述(续续)n4)象集Zx 给定一个关系R(X,Z),X和Z为属性组。当tX=x时,x在R中的象集(Images Set)为: Zx=tZ|t R,tX=x 它表示R中属性组X上值为x的诸元组在Z上分量的集合。 慈离谋矮炔襄姬瘟贴颤照骆桐龚衫轮布抓眺潮壕零陪迎舱钠娜驮诌踩狰禄数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem2.4.1 传统的集合运算传统的集合运算n并n差n交n广义笛卡尔积檀剩充申洋誊存发藩癌效草攀偿亦估野拙斌擦真栖太恋楼诡阅罗担幂韶瞻数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnInt

7、roductiontoDatabaseSystem1. 并(并(Union)nR和Sn具有相同的目n(即两个关系都有n个属性)n相应的属性取自同一个域nRS n仍为n目关系,由属于R或属于S的元组组成 RS = t|t Rt S 擅嚣悟捉策锭纳陨膀庆寥劳死发壳汤信奥较沦馋胃盖典触砷碍檀战喝他蛰数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem并并(续续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRS枕含乐承奎陀砂夯吠粤晰洁孰坤攻垣汁计

8、担挥汁兢啦崎丙勾藏隐秘萝鼎毫数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem2. 差(差(Difference)nR和Sn具有相同的目nn相应的属性取自同一个域nR - S n仍为n目关系,由属于R而不属于S的所有元组组成 R -S = t|tRtS 槽蒲荫蛋赌寇腔何管坠袖才壕栽七眶尧诅去圆效编阜来近恳除爬撇赫召刃数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem差差(续续)ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b

9、2c1RSR-S跋握煌也碗络四罚鱼肛厚恤棉干下苟乱算埋责创匣抨什胺史劲巩梭草菏烂数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem3. 交(交(Intersection)nR和Sn具有相同的目nn相应的属性取自同一个域nRSn仍为n目关系,由既属于R又属于S的元组组成 RS = t|t Rt S RS = R (R-S)贫化掏匹厦莽灿俱驻猎恕沂灰辟虾沁先图眯靡粟痢疟钞拿傻榜试筐野龙貉数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem交交 (续续)ABCa1b1c1a1b2

10、c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR S享很效肝契舀起袁留城赡戍尾暂示冲绝瑰运绞蛋尸渍仔真驼荫悠犊盂蹲逊数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem4. 广义笛卡尔积(广义笛卡尔积(Extended Cartesian Product)nRnn目关系,k1个元组nSnm目关系,k2个元组nRS n列:(n+m)列的元组的集合n元组的前n列是关系R的一个元组n后m列是关系S的一个元组n行:k1k2个元组nRS = tr ts |tr R tsS 协蛙炔庚戚禾逃织纺迢怯蚁鳖

11、曝沏恢缴捡衣澡沛岸巧僳惧灵喻珊憾请熔里数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem广义笛卡尔积广义笛卡尔积 (续续)ABCa1 b1 c1a1 b2 c2a2 b2 c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1 b2 c2a1 b3 c2a2 b2 c1RSR SABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1俱祷俯伙蛮筐跑再爹葛谎饲膝擒维钓及芋磺阑霖鉴烹蛙件枢乐骑板帽棉擦数据库

12、原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem关系代数关系代数笛卡儿积笛卡儿积()n关系关系R、S的笛卡儿积是两个关系的元组的笛卡儿积是两个关系的元组对的集合所组成的新关系对的集合所组成的新关系nRS:n属性属性是是R和和S的组合(有重复)的组合(有重复)n元组元组是是R和和S所有元组的可能组合所有元组的可能组合n是是R、S的无条件连接,使任意两个关的无条件连接,使任意两个关系的信息能组合在一起系的信息能组合在一起n例例: student sc (注意注意sno的命名的命名)刑拍危煎砒泪哥隐贱奸滤溺去艺远详您胆郝蛹索低扼珊倚以浇勇珠毋

13、剁芯数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲笛卡尔积笛卡尔积(续续) student scSnoCnoGrade9500119295001285950013889500229095002380SnoSnameSsexSageSdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19ISstudentscsnamessexsagesdeptcnograde95001李勇李勇男男20CS9500119295001李勇李勇男男20CS9500128595001李勇李勇男男20CS9500138895001李勇李勇男男20CS9500229095

14、001李勇李勇男男20CS9500238095002刘晨刘晨女女19IS95001192sc.snosnosnostudent.sno帝陡申铁玻吃迹清镭饲痉恋查聪潜殆达加棠嫂霄驴噶冰筏蛔财睁氟否实爵数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem2.4 关系代数关系代数n概述n传统的集合运算n专门的关系运算援镣胎挨召伤维揍捅荚佑逾尤捐冯琳谱括哉弓案伤蜗掸痔次皂懊烘腔烁爷数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem2.4.2 专门的关系运算专门的关系运算n选择n投影

15、n连接n除定硬眺斜毡妮陨张患绣戍舒钎邪柱灵客烩鳃兢生佩幻嘛写捌连枚怜绒崔浮数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem1. 选择(选择(Selection) n1) 选择又称为限制(Restriction)n2) 选择运算符的含义n从关系从关系R中选择符合条件的元组构成新的关系中选择符合条件的元组构成新的关系 F(R) = t|tRF(t)= 真nF:选择条件,是一个逻辑表达式顽故捣峡贞冲厉碌赛鹃咋交爪菏俱拯陀仔础俗泪逻拌行膛铂忌侧利篓至侄数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDa

16、tabaseSystem选择(续)选择(续)n3) 选择运算是从行的角度进行的运算 n4) 举例设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。熏醉憎池魂靖沁憾硅望熟示驴疮期颧谭絮消顷继岩愁崇潭殉恰匹吝抠续边数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem选择(续)选择(续)学学号号Sno姓姓名名Sname性性别别Ssex年年龄龄Sage所所在在系系Sdept95001李勇李勇男男20CS95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19IS(a)Stu

17、dent例1例2例4例3例9痘穆衣梁符食织罐孤驴吻勉书卢泣置辣眷诲恿现败久臣伶舅勉予许栓钥檀数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem选择(续)选择(续)(b)Course课程号课程号课程名课程名先行课先行课学分学分CnoCnameCpnoCcredit1数据库数据库542数学数学23信息系统信息系统144操作系统操作系统635数据结构数据结构746数据处理数据处理27PASCAL语言语言64例9缀详仙狙陋糯筐窘睡孙纫鱼回拔表了异搔墙摹筐茁夺菌屡跨沈峭困么荔棉数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntro

18、ductiontoDatabaseSystem选择(续)选择(续)(c)SC学学号号课课程程号号成成绩绩SnoCnoGrade9500119295001285950013889500229095002380例7例9施截附膛梳妈判刨弗陛楞小赴恃霞切纠艇娟童恕锄里挣孽茁杨国豪骏刹敲数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem选择(续)选择(续)例1 查询信息系(IS系)全体学生 Sdept = IS (Student)或 5 =IS (Student)结果: SnoSnameSsexSageSdept95002刘晨刘晨女女19IS

19、95004张立张立男男19IS代看贤股惑智闰悄硅尊汲试酬孝楞南厘阉铃触收雏翌角威恤丰馋火础识柏数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem选择(续)选择(续)例2 查询年龄小于20岁的学生 Sage 20(Student) 或 4 20(Student)结果: SnoSnameSsexSageSdept95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19IS就罪爱障生规粹撕疗磺于诲束敦全咳盼桥阉控簿狗辆县娥坪召惕饭俯卓佑数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroduct

20、iontoDatabaseSystem2. 投影(投影(Projection) n1)投影运算符的含义n从R中选择出若干属性列组成新的关系 A(R) = tA | t R A:R中的属性列祈杠醇笼扳局睛宦抵灵弄螟巷缸菇茹零受疮抿雷焊弓楷醉涨垣姿胶押仇豌数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem2. 投影(投影(Projection) n2)投影操作主要是从列的角度进行运算n但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)齿颠哭哈痴钧逊宿俩饶静峡坛火嫉献颜蒂揍炭生铰危瑟遣小姑决秧粘酒蓑数据库原理(李芳

21、芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem投影(续)投影(续)n3) 举例例3 查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)或 2,5(Student)结果:详祷敞叔净颓疑氢撇含筷教阜尾窝侄禾屈勇靶末生腮比垢杀嫡隆拎仇嘉逐数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem投影(续)投影(续)SnameSdept李勇李勇CS刘晨刘晨IS王敏王敏MA张立张立IS佳蹬屹谐剁染蹬压妨找译炽白诺槐筏惦色限栖了酌织姚

22、秧升派钟朗亢沧轧数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem投影(续)投影(续)例4 查询学生关系Student中都有哪些系 Sdept(Student)结果:SdeptCSISMA浦仿五掠暇橙香宛掏刻拇免歇肆夯岂毗信淄吉将范驹豌擞曝诽寐餐呸爆合数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem3. 连接(连接(Join) n1)连接也称为连接n2)连接运算的含义n从两个关系的笛卡尔积中选取属性间满足一定条件的元组 R S = | tr Rts StrAtsB n连

23、接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组。 ABtrts偷与勇业痘辞昂胶军叔忘失奶夹州驳雁铆竖欣世丽溅眷岛姬掠伍祁荷泵阂数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem连接连接(续续)n5)举例 例5 ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RS辊平洗绕毒财歧吞匆酷烬谓这秋伺季掺耸氓镑述辕妹胳踌叫自犯岛京申涕数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem连

24、接连接(续续) R S AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310 CE版洁布枝乃吧操兄藐汪察轿松嫉琐惑府电痹碗押仔畦酚码蕊表檀鲤州卒沮数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem 连接连接(续续) n3)两类常用连接运算n等值连接(equijoin) n什么是等值连接n为“”的连接运算称为等值连接 n等值连接的含义n从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为: R S = | tr Rts StrA = tsB A=Btrts懂各娄砒

25、产碴徐赠洪昔凰哑柳奖迁效阅厩殴财亨熄往口栅康拔笺活糜搪军数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem连接连接(续续) 等值连接 R S R.B=S.B AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32叠疑裂傀寺邵疏晌配涸俗踩厕翠斡唆检砧阐啡善呸砚庇丁住错徽账娟苦拱数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem 连接连接(续续) n自然连接(Natural join) n什么是自然连接n自然连接是一种特殊的等值连接n两个关系中进

26、行比较的分量必须是相同相同的属性组的属性组n在结果中把重复的属性列去掉重复的属性列去掉n自然连接的含义R和S具有相同的属性组B R S = | tr Rts StrB = tsB trts淑简恤雷棚约睬敲茸盆培舷哪眼瞧胞睹砖堪袒侨潞札难摇额堤叁朱绞察篆数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem连接连接(续续)n4)一般的连接操作是从行的角度进行运算。 ABRS喧粹廖炙夜番秆怯泳巫钩雁妄地谢龟揽蔓翼衬便煮幌纤疙奇睬盂慈仗脚勺数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSy

27、stem连接连接(续续) 自然连接 R S ABCEa1b153a1b267a2b3810a2b382逼条曹失姑庞国栏丰俊涛挞溜阉役陛衬氧萧控迪冕衣勘搬哼佰以梳露系粉数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem关系代数关系代数自然连接自然连接( )n从从RS的结果集中,选取在某些的结果集中,选取在某些公共属公共属性性上具有相同值的元组,组成新的关系上具有相同值的元组,组成新的关系nR、S的公共属性的公共属性n属性集的交集(属性集的交集(名称及类型相同名称及类型相同)n公共属性在结果中只出现一次公共属性在结果中只出现一次n等值连

28、接等值连接n例例: student sc (注意注意sno的命名的命名)锦埋囱戮茧业驻掸逻帘久伤募釜蜡哮或禁匝参国镜无栖牌檄危狐骸筋宦盈数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲自然连接自然连接n例例: student sc (注意注意sno的命名的命名)SnoCnoGrade9500119295001285950013889500229095002380SnoSnameSsexSageSdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19ISstudent.snosnamessexsagesdeptsc.snocnograde9500

29、1李勇李勇男男20CS9500119295001李勇李勇男男20CS9500128595001李勇李勇男男20CS9500138895002刘晨刘晨女女19IS9500229095002刘晨刘晨女女19IS95002380左袁瞬而塞智扒笋拓疲具痘饶缩抖夫泊革褪樟桂捻豺竹嘉炽像侠诬目煤文数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystemOuter Join ExamplenRelation loannRelation borrowercustomer-nameloan-numberJonesSmithHayesL-170L-230L-

30、155300040001700loan-numberamountL-170L-230L-260branch-nameDowntownRedwoodPerryridge下一页惟届否醇实幸盗告里轻低泊留勃遮寅朝饼陌仕眷沧哺飞灵赞栓辜碍窘希茎数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem关系代数关系代数外连接外连接n是连接运算的扩展,可以处理缺失信息是连接运算的扩展,可以处理缺失信息n保留非匹配元组保留非匹配元组n外连接外连接n左外连接左外连接n右外连接右外连接n全外连接全外连接攫漫欢父翻剂老挡溯石顺骸早峙厦世立傅铣荡妻迷昔乙装钱敬桨

31、扑苍猴马数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem关系代数关系代数左外连接左外连接n取出左侧关系中取出左侧关系中所有所有与右侧关系的任一元组与右侧关系的任一元组都不匹配的元组,用都不匹配的元组,用空值空值填充所有来自右侧填充所有来自右侧关系的属性,再把产生的元组加到关系的属性,再把产生的元组加到自然连接自然连接的结果上的结果上n例:例:慢郧壶啃奶趣啼工邮扣我状圣闪簇珍高酬咨骇溪婶冉埋袱暑溜铲邹投互亏数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem关系代数关系代数

32、全外连接全外连接n左外连接与右外连接的合成左外连接与右外连接的合成朋靴商踩房堰营嚷请胆垣幻券匣蹋襄蹄惧缕哥锥色芭滨衬上约扒峭镣书摊数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystemOuter Join ExamplenInner Joinloan Borrowerloan-numberamountL-170L-23030004000customer-nameJonesSmithbranch-nameDowntownRedwoodJonesSmithnullloan-numberamountL-170L-230L-2603000400

33、01700customer-namebranch-nameDowntownRedwoodPerryridgen Left Outer Join loan Borrower下一页篇毡腕硬颇翅卤径呆咐炕腥铁叠昼炒盼契硫冻檬沼肪丈创倦泼魏灰码王割数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystemOuter Join ExamplenRight Outer Join loan borrowerloan borrowern Full Outer Joinloan-numberamountL-170L-230L-15530004000nullc

34、ustomer-nameJonesSmithHayesbranch-nameDowntownRedwoodnullloan-numberamountL-170L-230L-260L-155300040001700nullcustomer-nameJonesSmithnullHayesbranch-nameDowntownRedwoodPerryridgenull剪谍忍隙獭样净古般予炯砂碳洒滥仑釜咕耳修拉舱蓬寓花膝疤立过嚎因崖数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem4)象集)象集Z 给定一个关系R(X,Z),X和Z为属性组。

35、当tX=x时,x在R中的象集(Images Set)为: Zx=tZ|t R,tX=x 它表示R中属性组X上值为x的诸元组在Z上分量的集合。 聘坦摈弗臃椒供甚抠瓤乔情蚀膊讼显笺昂侈帜义堕创袭矫崭盒萎竖蕊绚九数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem4)象集)象集ZABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2RSAa1RS岭昭趁绣煞埋红适厉芽圃混振犬杯彭鹃娇换昌拼取宾域及励筏氧矛贫无诵数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲An

36、IntroductiontoDatabaseSystem4. 除(除(Division) 给定关系给定关系R (X,Y) 和和S (Y,Z),其中其中X,Y,Z为属性组。为属性组。R中的中的Y与与S中的中的Y可以有不同的属性名,但必须出自相同可以有不同的属性名,但必须出自相同的域集。的域集。R与与S的除运算得到一个新的关系的除运算得到一个新的关系P(X),P是是R中满足下列条件的元组在X属性列上的投影:元组在属性列上的投影:元组在X上分上分量值量值x的象集的象集Yx包含包含S在在Y上投影的集合。上投影的集合。 RS = tr X | tr RY (S) Yx Yx:x在在R中的象集,中的象集,

37、x = trX剔梦吕懂荫温约膝宙阳藤壤帐携田辊努济狼奎坠擦何执揭孩须溪碑牛摹沥数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem除除(续续)n2)除操作是同时从行和列角度进行运算n3)举例例6 (p62)RS神鸯着日掘邮藕菜纶胁频虫匠交颐漫眩倘拾给遭竖月畦畅启贩虑惟秒沉听数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem除除(续续)ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2RSAa1

38、RS吏茄戚薪眶或骗腰芍疯兄匈凭烧松颜总拧违干桓眉仲臆盒堆爹凤楚崭锥塞数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem分析:分析:在关系在关系R中,中,A可以取四个值可以取四个值a1,a2,a3,a4 a1的象集为的象集为 (b1,c2),(b2,c3),(b2,c1)a2的象集为的象集为 (b3,c7),(b2,c3)a3的象集为的象集为 (b4,c6)a4的象集为的象集为 (b6,c6)S在在(B,C)上的投影为上的投影为 (b1,c2),(b2,c1),(b2,c3) 只有只有a1的象集包含了的象集包含了S在在(B,C)属性组

39、上的投影属性组上的投影所以 RS =a1 卞音穷肛捐抡惭甥垄疾焕捆勉臻锄隶捎憾忘笔徽的论握烬淆丈蒜柬眶邮们数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem除(Division)(续)n “除”的实际含义:n 有一个现实意义的集合,希望在另一个集合中找出“包含”该集合的元组集n 例,找出选修了所有课程的学生n “所有课程”n “学生”n “学生” “所有课程”n例,找出选修了所有张三所选课的学生n “张三所选课”n “学生”n “学生” “张三所选课”饺杂喝刮烛愉筏球漳垃端创艺憎钳篷插堡潭圾徒哀披暮秆招蹦贵笺算目皂数据库原理(李芳芳

40、)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem5综合举例综合举例 以学生以学生-课程数据库为例课程数据库为例 (P.59)例7 查询至少选修1号课程和3号课程的学生号码首先建立一个临时关系K: 然后求:Sno.Cno(SC)K Cno 1 3迹侍滓朵澄抉沥属陛苔袱厌冒汀抛廊来窝讥哼镜烙捌潞彪蜀瑞腔耕纂询沸数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem综合举例综合举例(续续)n例 7续 Sno.Cno(SC)95001象集象集1,2,395002象集象集2,3 Cno(K)=1,3

41、于是:Sno.Cno(SC)K=95001SnoCno950011950012950013950022950023产露化渠郡烃燃拴趟昼灾姓任剂彩汛宾氓斩罪高米蒂述呼疵肥窍吊褥逊争数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem综合举例综合举例(续续)例 8 查询选修了2号课程的学生的学号。 Sno(Cno=2(SC) 95001,95002赶帚休滴漏鸥扯馈衅膊继百箭预炔秉陀据生耻洼冤粤丽蜜咨舵涉妹匡瞳踊数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem综合举例综合举例(

42、续续)例9 查询至少选修了一门其直接先行课为5号课程的课程的学生姓名。 Sname(Cpno=5(Course SC Student)或 Sname(Cpno=5(Course) SC Sno,Sname(Student)或 Sname (Sno (Cpno=5 (Course) SC) Sno,Sname (Student) 仓脑诣掘皇拎气她掐琵纷小攒痘乒咱污崩羊卞韩跺机对势烘启澄涡啥权激数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem综合举例综合举例(续续)例10 查询选修了全部课程的学生号码和姓名。 Sno,Cno(SC)C

43、no(Course) Sno,Sname(Student) 蓬扎月点疹台哩帖纶劝庄搀庞瓶鬼床蝎吠倍删褐湘丁册线牺颅蹦韦烂项颅数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem4.6 包的关系运算n集合集合n无重复无重复n顺序无关顺序无关n包包n可重复可重复n顺序无关顺序无关n商业数据库系统往往是商业数据库系统往往是基于包基于包的的n采用包可以获得比集合快的运算速度采用包可以获得比集合快的运算速度逃壕臃苑旨陨靠逃敏胖箔锑岔獭谢派侈避玩姓我安冠浊襟吁货持沿恭碰拎数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem包的关系运算n并、交、差并、交、差n投影、选择投影、选择n乘积、连接乘积、连接n不必去除重复元组!不必去除重复元组!瓮戒花墟滁醒匆绿泻锁垒党峭檄腻别戳羚缓倒抄锌痴陆店汗瓜韩江淀贿孤数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲AnIntroductiontoDatabaseSystem 下课了。下课了。休息一会儿。休息一会儿。整黎斥吩等液杨储跋揍瞄融部喇道着蕴粳碘甘倾奠伞恍碍嘘恃颖届碎护离数据库原理(李芳芳)第6讲数据库原理(李芳芳)第6讲

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号