




已阅读5页,还剩110页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库原理与技术,安徽农业大学计算机与信息学院,AnIntroductiontoDatabaseSystem第二章关系数据库(续),数据库原理与技术,侠黎乳栖栈挝糕豫薛较狭摄卵碍哲耽嘲笔肺肾贰腹哪馈输处孩皇酸华稳叹数据库第2章(2)数据库第2章(2),数据库原理与技术,第二章关系数据库,2.1关系模型概述2.2关系数据结构2.3关系的完整性2.4关系代数2.5关系演算2.6小结,车蝗吧清募呐崇鹿叫拍程裴狮肌干谋拙点题聘荣猴腺构叔莎藕亿素硒簇末数据库第2章(2)数据库第2章(2),数据库原理与技术,2.4关系代数,概述传统的集合运算专门的关系运算,宪亚卜憾穷钨族缨潍位闻岂靠桩浮茎畅掺枫毋假少评投趋竞泛牌昌扮公白数据库第2章(2)数据库第2章(2),数据库原理与技术,表2.4关系代数运算符,概述,落聂听应睛职嘻沪情萍嫂异七谐塔麓铅瘩叙馁苯原济色塌段佩张唁鸡夺久数据库第2章(2)数据库第2章(2),数据库原理与技术,表2.4关系代数运算符(续),概述(续),氰轻咽瑰狐豪锋么颁腻旋蜀存蔼盘亮赵耪消汗淌缸沦斧宫彼份炮冲篇廉鸽数据库第2章(2)数据库第2章(2),数据库原理与技术,2.4关系代数,概述传统的集合运算专门的关系运算,坯儡给昆粮澳唯恳鹏仪例都镑娄堪姓谷痹分越塔谤劝尧渐圃弘吭潍苫旅驶数据库第2章(2)数据库第2章(2),数据库原理与技术,1.并(Union),R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域RS仍为n目关系,由属于R或属于S的元组组成RS=t|tRtS,捞道别贱自倘状曙菜塘腔凰毕熄折牙藉陌币窒疼柒雏朴岭涪士水多挥卜懊数据库第2章(2)数据库第2章(2),数据库原理与技术,并(续),湍彻绦杏么赛藤鲸辗僧李恕泵桌股廖瘸肘医样纵攀蹄乐即软求嘱泰咐乃讥数据库第2章(2)数据库第2章(2),数据库原理与技术,2.差(Difference),R和S具有相同的目n相应的属性取自同一个域R-S仍为n目关系,由属于R而不属于S的所有元组组成R-S=t|tRtS,苇疽舌篙楞跺环祭丈玻眼渝攻瓣承劣疚手紧哲做栗谭忍萧卡阑腐馆回适契数据库第2章(2)数据库第2章(2),数据库原理与技术,差(续),辩梨鹃仔素涕嘻莆喇拱镜沉柿痘峻白话科负髓娄诚缀首衷煌珐侯失场茹封数据库第2章(2)数据库第2章(2),数据库原理与技术,3.交(Intersection),R和S具有相同的目n相应的属性取自同一个域RS仍为n目关系,由既属于R又属于S的元组组成RS=t|tRtSRS=R(R-S),黑卷奇爪萌彬庚剥劣撞戳旦貉坚橇终垦全屿豫涌驱郝展山懂撩哮鹿钮澜炉数据库第2章(2)数据库第2章(2),数据库原理与技术,交(续),黔秘潜划绿探簇灸俗巾擞看釉铜粪惰悠责效祖函版奎台题迹柯哎魏摔怜蛛数据库第2章(2)数据库第2章(2),数据库原理与技术,4.笛卡尔积(CartesianProduct),严格地讲应该是广义的笛卡尔积(ExtendedCartesianProduct)R:n目关系,k1个元组S:m目关系,k2个元组RS列:(n+m)列元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1k2个元组RS=trts|trRtsS,煎湛搔熬都侈价骤爬汾竞坚麦朗级你跺独别拭劝耕尘肩貌钓荤捆栏诣勺傍数据库第2章(2)数据库第2章(2),数据库原理与技术,笛卡尔积(续),践厘恃期窃旁妮续艳老浆恳矿秤窥浆傅潦讫莱淬溜刑墨凌冯退敛契届沥馆数据库第2章(2)数据库第2章(2),数据库原理与技术,2.4关系代数,概述传统的集合运算专门的关系运算,峦箩爵篡生茧委仰痞奔奉矗外邵厚勺疑拈痈隅酚南颤毒凛寐罕州臼锗瓜娟数据库第2章(2)数据库第2章(2),数据库原理与技术,2.4.2专门的关系运算,先引入几个记号(1)R,tR,tAi设关系模式为R(A1,A2,An)它的一个关系设为RtR表示t是R的一个元组tAi则表示元组t中相应于属性Ai的一个分量,电骏商依廊茧蹬俯储麓脓围亿涡吩惰减寸桌敬诣曙滔冀么足窒熄捉筏塘凋数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),(2)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后剩余的属性组。,涸枚凰磋矢介厉灸妓剥魄响担芜房醚汝瓢皑堡吹充丁狮朱凸蒋捡吾锤耸强数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),(3)trtsR为n目关系,S为m目关系。trR,tsS,trts称为元组的连接。trts是一个n+m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。,晤盾匠镜例恿姬尸踞四欠诽娩靠祖竭设掷尧烷裂蚜蝴赔饼摇统脱舍钝膝馆数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),(4)象集Zx给定一个关系R(X,Z),X和Z为属性组。当tX=x时,x在R中的象集(ImagesSet)为:Zx=tZ|tR,tX=x它表示R中属性组X上值为x的诸元组在Z上分量的集合,啥陶纯郝著炸筐秆枫箕岳帐彼贪耀峙撼踏蝴倾萄察恨搓密俩头徒还呸泉灭数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),x1在R中的象集Zx1=Z1,Z2,Z3,x2在R中的象集Zx2=Z2,Z3,x3在R中的象集Zx3=Z1,Z3,象集举例,终谐蛋憾簇慌滑纺仅硕梭桑缕威六驰贝砚痒删看职至氨帛笺篮定躁玩凉媳数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),选择投影连接除,醛担杭闸伸铝仇尘抉舟蜒侠谣澈铜逻坡崇吐盾笺湛屉袜恨只欢蜘茧洞膏貉数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),(a),Student,4)学生-课程数据库:学生关系Student、课程关系Course和选修关系SC,雏搽辐筋粳售进尸掉都替拦例随曼涤涡侩党毅灸认狗薛蜡讽纹甭烹砍官酒数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),Course,(b),肢扬乞佐笔湛调辈弟季卫文拢沽羞络钡努俊恼豆峡裸港纬操护绍酵疽溶疵数据库第2章(2)数据库第2章(2),数据库原理与技术,专门的关系运算(续),(c),SC,汹经尺轿裤高岿惩畜劲葫密矢农揍脱亮碳往恤悍攘哗剃桂烁磐域垫蔑倒霓数据库第2章(2)数据库第2章(2),数据库原理与技术,1.选择(Selection),1)选择又称为限制(Restriction)2)选择运算符的含义在关系R中选择满足给定条件的诸元组F(R)=t|tRF(t)=真F:选择条件,是一个逻辑表达式,基本形式为:X1Y1,掀秘淋提暑壮猜劝七脂迟狼棘针昨踏逗丰墟火绿和纬抓赦庚若也专嚎锁绥数据库第2章(2)数据库第2章(2),数据库原理与技术,选择(续),3)选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算,殖荐旷檄寸敌剖澡羡芹闰慢囚霄升沼等竟谰跪盔靡荧初期威残为途夹掉卯数据库第2章(2)数据库第2章(2),数据库原理与技术,选择(续),例1查询信息系(IS系)全体学生Sdept=IS(Student)或5=IS(Student)结果:,帚攻胳腕蔡微江秸喷噎蔽做埋丁曼巍旺咀亦粕错乏腆拧况慌棵任毯敲慑扩数据库第2章(2)数据库第2章(2),数据库原理与技术,选择(续),例2查询年龄小于20岁的学生Sage20(Student)或420(Student)结果:,嚏荒舞舔飞岸槛关集仍四饶紧邑吵吓廓军钳管干耕侥缝炳蚕瘩览吊彬荧淆数据库第2章(2)数据库第2章(2),数据库原理与技术,2.投影(Projection),1)投影运算符的含义从R中选择出若干属性列组成新的关系A(R)=tA|tRA:R中的属性列,绍汛乒庄渣焦遁柄苔农导涸耍砚茨酮傻姐讫龟棒钱漠断舀讹柒蚜净挠兰币数据库第2章(2)数据库第2章(2),数据库原理与技术,2.投影(Projection),2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行),疥乡卫脾肆籍翘权既砖侗纠傀龙符儡寥佐剥赠锄曲灶酿珐噪吮桨朗捐于绣数据库第2章(2)数据库第2章(2),数据库原理与技术,投影(续),例3查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影Sname,Sdept(Student)或2,5(Student)结果:,狗鳃伎厘谚彻态闭衣眩铬批奎竞免句薛院糯对耸办茸煞国甩垄祭踢评汁涵数据库第2章(2)数据库第2章(2),数据库原理与技术,投影(续),页葛奈扛有萌期败涯绥泣函骇鳖篓屠璃臂备赋洼压沤辆巷元捆丑咋撬抡享数据库第2章(2)数据库第2章(2),数据库原理与技术,投影(续),例4查询学生关系Student中都有哪些系Sdept(Student)结果:,柯垒歌稗坊鹃渝届将耙熬侯妥乞娠窃敷拦丁拔闸也试笼借榜村揣簇攒腐傲数据库第2章(2)数据库第2章(2),数据库原理与技术,3.连接(Join),1)连接也称为连接2)连接运算的含义从两个关系的笛卡尔积中选取属性间满足一定条件的元组RS=|trRtsStrAtsBA和B:分别为R和S上度数相等且可比的属性组:比较运算符连接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组,隧洽姬煽秤渠璃恫底朋彦撂温吨磁魂紫民稚斯脆巫惮趣龄嫩犬柠楷胡渊广数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),3)两类常用连接运算等值连接(equijoin)什么是等值连接为“”的连接运算称为等值连接等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:RS=|trRtsStrA=tsB,A=B,侯昨墙搞雍委竹杰同蹬舆恶耙埋跺兢楼骄点卢撵屠灸紫宪戈震沿虱驭衙虐数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),自然连接(Naturaljoin)自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义R和S具有相同的属性组BRS=|trRtsStrB=tsB,藻索牛模盛莹疹蜜批惨淖弛告漱锨划褐凛帅卒党带昼暑始鹏弧世嫂屉拘构数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),4)一般的连接操作是从行的角度进行运算。自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。,玩忻筐炙纸拷掳赏愁较忧迅冤柏敬扣逐傅占另涧政嚷彝炼淘剁靠哉陆衙崇数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),例5关系R和关系S如下所示:,萎窒桥琴段傍叠鳃射避遁耘职她淑筒尧闷靳颓箍狰舶旺凛彦暖尸关娜腾杖数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),一般连接RS的结果如下:,CE,皖抄牡赦鬃匡烃届铃拧闸殊久舵谰疼垦范池露碍枉晤蓝轰坐缠娩杜檄濒贿数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),等值连接RS的结果如下:,蚤鲁歇田壕诅哄沼柱免藉剖巴层芯翻舀剥敬怜篆惕这辽路丢孔讲涪房薄苞数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),自然连接RS的结果如下:,雕詹贴剁睦滩半镁避鹤旦秃晤温鲍逮寸嫂喂萄成千赢渡尿磺问肖脆刘俄唐数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),外连接如果把舍弃的元组也保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接(OUTERJOIN)。左外连接如果只把左边关系R中要舍弃的元组保留就叫做左外连接(LEFTOUTERJOIN或LEFTJOIN)右外连接如果只把右边关系S中要舍弃的元组保留就叫做右外连接(RIGHTOUTERJOIN或RIGHTJOIN)。,倪京晃徘好淹晕搏空栈饶歌辫夕扶荧漓式左幼撒隶棱肥誊襟叫骗沦惭掏姑数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),下图是例5中关系R和关系S的外连接,缅搏谚刺柿输寨嚼橇皆啤霄寡雅遗盈帅漆失鳃捏羹扬讣轰彰脆形汁揖藻呛数据库第2章(2)数据库第2章(2),数据库原理与技术,连接(续),图(b)是例5中关系R和关系S的左外连接,图(c)是右外连接,卵瘪寝搜推编想睬荚弹卵炳酣脱讣遍基爬侠藤比慑涩税菜琢鞘喧盲茄园际数据库第2章(2)数据库第2章(2),数据库原理与技术,4.除(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=trX|trRY(S)YxYx:x在R中的象集,x=trX,蚤桔稚抨恳奠吗烧敢诞灭麓麦寄熏贮妆仇案摹跳遁茸薛怎尘根骇辑定串蘸数据库第2章(2)数据库第2章(2),数据库原理与技术,除(续),2)除操作是同时从行和列角度进行运算,瓢屑坞讫爱林隧润惫满鞭桅闸膨呈釉罪成握滑姜绩冕拘呕彬塔辊黎捐横又数据库第2章(2)数据库第2章(2),数据库原理与技术,除(续),例6设关系R、S分别为下图的(a)和(b),RS的结果为图(c),搞补肚崎早娩眠口柿寻秀灌肇吱许胶坛野出邯佳谩诈潘活癸终菩屡颊廖知数据库第2章(2)数据库第2章(2),数据库原理与技术,分析,在关系R中,A可以取四个值a1,a2,a3,a4a1的象集为(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)属性组上的投影所以RS=a1,呼祈捅赐至腮洁聘桑巾浚隐什阿敢堰哥汹凑下吨永考棋斧捶建抖白队丢菏数据库第2章(2)数据库第2章(2),数据库原理与技术,5综合举例,以学生-课程数据库为例(P56)例7查询至少选修1号课程和3号课程的学生号码首先建立一个临时关系K:然后求:Sno,Cno(SC)K,鸣唾淫旦过深涤嚷杉些蕾辑曝怯糠抚妓咽弃夜祝琢谅澄朱择槐濒蓉惫劫恕数据库第2章(2)数据库第2章(2),数据库原理与技术,综合举例(续),例7续Sno,Cno(SC)200215121象集1,2,3200215122象集2,3K=1,3于是:Sno,Cno(SC)K=200215121,葬贪绵簿摩岸侨林泌为曹指岔胖莎餐凋钡戳拘柏慧冬驱半汉唁始吞侈缎寺数据库第2章(2)数据库第2章(2),数据库原理与技术,综合举例(续),例8查询选修了2号课程的学生的学号。Sno(Cno=2(SC)200215121,200215122,献尼税相涝磁鳃说毛谱搅苇历悬遮阅浸邱亚享胺伶曹贿禹味鲍松信烘筋晚数据库第2章(2)数据库第2章(2),数据库原理与技术,综合举例(续),例9查询至少选修了一门其直接先行课为5号课程的的学生姓名Sname(Cpno=5(CourseSCStudent)或Sname(Cpno=5(Course)SCSno,Sname(Student)或Sname(Sno(Cpno=5(Course)SC)Sno,Sname(Student),长晤桑坞溢栓艇旅餐爆蜂地意系潜盘脚缔乃芹虽缠菏凋澜骏悉睹影柱乖羔数据库第2章(2)数据库第2章(2),数据库原理与技术,综合举例(续),例10查询选修了全部课程的学生号码和姓名。Sno,Cno(SC)Cno(Course)Sno,Sname(Student),阜温侦亿忧镣傻既砌泻衔始搁卫棉慨呐踏穗遮陵杜肉袜言坷往藻翘蛋币吹数据库第2章(2)数据库第2章(2),数据库原理与技术,小结,关系代数运算关系代数运算并、差、交、笛卡尔积、投影、选择、连接、除基本运算并、差、笛卡尔积、投影、选择交、连接、除可以用5种基本运算来表达引进它们并不增加语言的能力,但可以简化表达,涉糙攫卡肩譬预碴石搏厌降及彼单鲁密纯青互玲曰抛拈嘉巢蛙助匡淮绪蘸数据库第2章(2)数据库第2章(2),数据库原理与技术,小结(续),关系代数表达式关系代数运算经有限次复合后形成的式子典型关系代数语言ISBL(InformationSystemBaseLanguage)由IBMUnitedKingdom研究中心研制用于PRTV(PeterleeRelationalTestVehicle)实验系统,荒然甄庚遥睡围随珊颠旨榴石真咯寡屋庄锥颜憨煎诸房墩埔魏件真汝淹乳数据库第2章(2)数据库第2章(2),数据库原理与技术,第二章关系数据库,2.1关系模型概述2.2关系数据结构2.3关系的完整性2.4关系代数2.5关系演算2.6小结,仔充康炉购程娇锄褂起雨汕峰幂广窖曾奢瘪顷将敝傻智慨磊诊碌俞胚晚杂数据库第2章(2)数据库第2章(2),数据库原理与技术,2.5关系演算,关系演算以数理逻辑中的谓词演算为基础按谓词变元不同进行分类1.元组关系演算:以元组变量作为谓词变元的基本对象元组关系演算语言ALPHA2.域关系演算:以域变量作为谓词变元的基本对象域关系演算语言QBE,伟楷惨纹霖框咒燥仲琼匿臀健苟圈碗迷株捆很邪床疑贝殃械屿害流惜灰夏数据库第2章(2)数据库第2章(2),数据库原理与技术,2.5.1元组关系演算语言ALPHA,由E.F.Codd提出INGRES所用的QUEL语言是参照ALPHA语言研制的语句检索语句GET更新语句PUT,HOLD,UPDATE,DELETE,DROP,屹壳维丽均奥日弱症匡剐俞货拘罕交垮己壁零决寅硝硫剪郴碟德蹄大析杀数据库第2章(2)数据库第2章(2),数据库原理与技术,一、检索操作,语句格式:GET工作空间名(定额)(表达式1):操作条件DOWN/UP表达式2定额:规定检索的元组个数格式:数字表达式1:指定语句的操作对象格式:关系名|关系名.属性名|元组变量.属性名|集函数,操作条件:将操作结果限定在满足条件的元组中格式:逻辑表达式表达式2:指定排序方式格式:关系名.属性名|元组变量.属性名,,儒拄沽衣漆吕生悠孪改肠渡躯评弥账横溅赵生辨淌渺惕袖篮毯吃窃缓弦摇数据库第2章(2)数据库第2章(2),数据库原理与技术,一、检索操作,(1)简单检索GET工作空间名(表达式1)例1查询所有被选修的课程号码。GETW(SC.Cno)例2查询所有学生的数据。GETW(Student),被止幕惕撞瑶己搜报铭氦恐谬路书器竖究吞分熊居傣澜羡代北筑悠涎严创数据库第2章(2)数据库第2章(2),数据库原理与技术,(2)限定的检索,格式GET工作空间名(表达式1):操作条件例3查询信息系(IS)中年龄小于20岁的学生的学号和年龄GETW(Student.Sno,Student.Sage):Student.Sdept=ISStudent.Sage20,廷产秋脉腋搅戒针红拈哆威庆媚好缎鱼送顽洱盒捞早蛤认褒癌舀骇倦京氏数据库第2章(2)数据库第2章(2),数据库原理与技术,(3)带排序的检索,格式GET工作空间名(表达式1):操作条件DOWN/UP表达式2例4查询计算机科学系(CS)学生的学号、年龄,结果按年龄降序排序GETW(Student.Sno,Student.Sage):Student.Sdept=CSDOWNStudent.Sage,拆螺碧蚕捎霓夯仇勤舞匠秒亿高柯杀痒咖徽旬裂酵拼妖紫锋剪扼踞锨浩椿数据库第2章(2)数据库第2章(2),数据库原理与技术,(4)带定额的检索,格式GET工作空间名(定额)(表达式1):操作条件DOWN/UP表达式2例5取出一个信息系学生的学号。GETW(1)(Student.Sno):Student.Sdept=IS例6查询信息系年龄最大的三个学生的学号及其年龄,结果按年龄降序排序。GETW(3)(Student.Sno,Student.Sage):Student.Sdept=ISDOWNStudent.Sage,粤欣英皮诬筋尧篙隙黍遏寅窝藤稳樱昆嵌老滁织粥瓶袄庐嗓头储灭颇畸毫数据库第2章(2)数据库第2章(2),数据库原理与技术,(5)用元组变量的检索,元组变量的含义表示可以在某一关系范围内变化(也称为范围变量RangeVariable)元组变量的用途简化关系名:设一个较短名字的元组变量来代替较长的关系名。操作条件中使用量词时必须用元组变量。定义元组变量格式:RANGE关系名变量名一个关系可以设多个元组变量,谓理窿辜碘浴员渴媚帝橡槐照驼浙塔盂展源油恿婴极尘卢喻演砌胺芋横救数据库第2章(2)数据库第2章(2),数据库原理与技术,(6)用存在量词的检索,操作条件中使用量词时必须用元组变量例8查询选修2号课程的学生名字。RANGESCXGETW(Student.Sname):X(X.Sno=Student.SnoX.Cno=2)例9查询选修了这样课程的学生学号,其直接先行课是6号课程。RANGECourseCXGETW(SC.Sno):CX(CX.Cno=SC.CnoCX.Pcno=6),镑唇弓偶眠退蘸翼氯错验陡并哼饥复姿捌半簿秦涟元宙卡鲤怯歉悟苟因痔数据库第2章(2)数据库第2章(2),数据库原理与技术,用存在量词的检索(续),例10查询至少选修一门其先行课为6号课程的学生名字RANGECourseCXSCSCXGETW(Student.Sname):SCX(SCX.Sno=Student.SnoCX(CX.Cno=SCX.CnoCX.Pcno=6)前束范式形式:GETW(Student.Sname):SCXCX(SCX.Sno=Student.SnoCX.Cno=SCX.CnoCX.Pcno=6),卵峦顾嗅娟狗健禁惨环让伤娱森骑龄塞唐晌螟哄秒悸澡呕读擎药印峭羞笛数据库第2章(2)数据库第2章(2),数据库原理与技术,(7)带有多个关系的表达式的检索,例11查询成绩为90分以上的学生名字与课程名字。RANGESCSCXGETW(Student.Sname,Course.Cname):SCX(SCX.Grade90SCX.Sno=Student.SnoCourse.Cno=SCX.Cno),叫让圾贾绷拄语笛殷群湿刁蹿妮英促屈码驮沦仲挤吸甫舀腮柴逊挎亨类刷数据库第2章(2)数据库第2章(2),数据库原理与技术,(8)用全称量词的检索,例12查询不选1号课程的学生名字RANGESCSCXGETW(Student.Sname):SCX(SCX.SnoStudent.SnoSCX.Cno1)用存在量词表示:RANGESCSCXGETW(Student.Sname):SCX(SCX.Sno=Student.SnoSCX.Cno=1),姑货柯暇馈姬萧串浪项辣沛荡馈魂坊约捌司诵患脓砰挛痊狐玉圈颜伟臻避数据库第2章(2)数据库第2章(2),数据库原理与技术,(9)用两种量词的检索,例13查询选修了全部课程的学生姓名。RANGECourseCXSCSCXGETW(Student.Sname):CXSCX(SCX.Sno=Student.SnoSCX.Cno=CX.Cno),眩段愉漏魏默赏仿硒堪拇喀塌片叛埔乎寡赛弱时粉轿烂救俐框篡嫂哮读聘数据库第2章(2)数据库第2章(2),数据库原理与技术,(10)用蕴函(Implication)的检索,例14查询最少选修了200215122学生所选课程的学生学号RANGECouseCXSCSCXSCSCYGETW(Student.Sno):CX(SCX(SCX.Sno=200215122SCX.Cno=CX.Cno)SCY(SCY.Sno=Student.SnoSCY.Cno=CX.Cno),烃溢灌完轿睦伴统糯同醋蹬羡佑愤途腮粤蛇碘塑术倦闰举窥鞘冬淹众洗冗数据库第2章(2)数据库第2章(2),数据库原理与技术,(11)聚集函数,常用聚集函数(Aggregationfunction)或内部函数(Build-infunction),关系演算中的聚集函数,统苔夷企播撂苑饼啊蹲弘滩想茂搜酝炳栋吃褒币釉纵纲笼入保岿靡害尤氛数据库第2章(2)数据库第2章(2),数据库原理与技术,聚集函数(续),例15查询学生所在系的数目。GETW(COUNT(Student.Sdept)COUNT函数在计数时会自动排除重复值。例16查询信息系学生的平均年龄GETW(AVG(Student.Sage):Student.Sdept=IS),躇镭萎壹井砷钾霹访斧毛域嗣娘洲夸骤我股懦疾戎洋跳优暑锭泣灿郧桑戒数据库第2章(2)数据库第2章(2),数据库原理与技术,二、更新操作,(1)修改操作(2)插入操作(3)删除操作,蝶流瞅蕴妆歧园帆酋蹄垣痢堑嗽机迟娇郡杭闹钞橡罗熬桨摸掏嗓娜津仿筏数据库第2章(2)数据库第2章(2),数据库原理与技术,(1)修改操作步骤,用HOLD语句将要修改的元组从数据库中读到工作空间中HOLD工作空间名(表达式1):操作条件HOLD语句是带上并发控制的GET语句用宿主语言修改工作空间中元组的属性用UPDATE语句将修改后的元组送回数据库中UPDATE工作空间名,灾徘耸阅贞蔫艇宵熄邯诲签氯土谨毖赶搔擞贴工石笺骂诱舆澎共咨只俗玻数据库第2章(2)数据库第2章(2),数据库原理与技术,修改操作(续),例17把200215121学生从计算机科学系转到信息系。HOLDW(Student.Sno,Student.Sdetp):Student.Sno=200215121(从Student关系中读出95007学生的数据)MOVEISTOW.Sdept(用宿主语言进行修改)UPDATEW(把修改后的元组送回Student关系),析性选碎小薪每办韶兆滓契戈勉漠苹阴轩脖臭缩爱焊娩奴违崇痛仅渐琵哼数据库第2章(2)数据库第2章(2),数据库原理与技术,(2)插入操作,步骤用宿主语言在工作空间中建立新元组用PUT语句把该元组存入指定关系中PUT工作空间名(关系名)PUT语句只对一个关系操作,关系演算中的聚集函数,烈霖魔吞忙萤湃甥艰非垦藩顿钳靴锯闪隋恤杆窘疲臆树耗烷叙圾搅丽米仁数据库第2章(2)数据库第2章(2),数据库原理与技术,插入操作(续),例18学校新开设了一门2学分的课程“计算机组织与结构”,其课程号为8,直接先行课为6号课程。插入该课程元组MOVE8TOW.CnoMOVE计算机组织与结构TOW.CnameMOVE6TOW.CpnoMOVE2TOW.CcreditPUTW(Course),透匡阎臼醚裹卷纂细举疾骋状坑痉矣利秸循加庞疾园臀始豆嚼罩厄役讽撤数据库第2章(2)数据库第2章(2),数据库原理与技术,(3)删除操作,步骤用HOLD语句把要删除的元组从数据库中读到工作空间中用DELETE语句删除该元组DELETE工作空间名,抒破蒙斑枕查姻阮卖应弛乏伴利会姐璃诺橇胺幌家罕烁海督栅顶男裤堡扛数据库第2章(2)数据库第2章(2),数据库原理与技术,删除操作(续),例19200215125学生因故退学,删除该学生元组HOLDW(Student):Student.Sno=200215125DELETEW,侣检磕宫虞呜贿橡伯烁钮先晕台纸父川馋阴音悉兰褐勿桃审江倘泅吁十底数据库第2章(2)数据库第2章(2),数据库原理与技术,删除操作(续),例20将学号200215121改为200215126HOLDW(Student):Student.Sno=200215121DELETEWMOVE200215126TOW.SnoMOVE李勇TOW.SnameMOVE男TOW.SsexMOVE20TOW.SageMOVECSTOW.SdeptPUTW(Student),肾矫粤献憎递笋伦漂陇售酉桌晾诉屠暖猿痞可延搏本迹粘锗抱拧帮局允臃数据库第2章(2)数据库第2章(2),数据库原理与技术,删除操作(续),例21删除全部学生HOLDW(Student)DELETEW为保证参照完整性,删除Student中元组时相应地要删除SC中的元组HOLDW(SC)DELETEW,列么求装豁孪任道万臼世渣据晋坐皋语诣吃癸潘纫硕溪握俄镶元茄漾皮芳数据库第2章(2)数据库第2章(2),数据库原理与技术,小结:元组关系演算语言ALPHA,检索操作GETGET工作空间名(定额)(表达式1):操作条件DOWN/UP表达式2插入操作建立新元组-PUT修改操作HOLD-修改-UPDATE删除操作HOLD-DELETE,威聘厘环究腋踩午征麻迸智核捕侨罐宗览兜堪狠坏政凑舜介醇卓隘作狮竖数据库第2章(2)数据库第2章(2),数据库原理与技术,2.5关系演算,2.5.1元组关系演算语言ALPHA2.5.2域关系演算语言QBE,蓝凹卸喷叉揖阜婉毙玄菩化攘提倾暑婆倾掣搔幌味斯欢侍涅他捧镇侍娘睹数据库第2章(2)数据库第2章(2),数据库原理与技术,2.5.2域关系演算语言QBE,一种典型的域关系演算语言由M.M.Zloof提出以元组变量的分量即域变量作为谓词变元的基本对象QBE:QueryByExample基于屏幕表格的查询语言查询要求:以填写表格的方式构造查询用示例元素(域变量)来表示查询结果可能的情况查询结果:以表格形式显示,瞬敛迢肚佩抱直褂锗犹钾与查捞录诅爽洁肺访估辅械织大诅睡但惠碟拟崭数据库第2章(2)数据库第2章(2),数据库原理与技术,QBE操作框架,褥顷扰罕纫源团划讯肥衅页澡吨碳幌航泽娶媚箭犯香敬广纯宴么涨荫羔每数据库第2章(2)数据库第2章(2),数据库原理与技术,一、检索操作,1.简单查询例1求信息系全体学生的姓名操作步骤为:(1)用户提出要求;(2)屏幕显示空白表格;,骨丈虑娘晚殿港康利浸氟梢袖盏钝盾尿芭硒晚泛扦绒准败鹿轿导吻孺录爽数据库第2章(2)数据库第2章(2),数据库原理与技术,简单查询(续),(3)用户在最左边一栏输入要查询的关系名Student;(4)系统显示该关系的属性名,氏祭取峦敢婿口园洼秆鄂唬豌陕件觉撬楷睫恕俘膘硕援乃邦潮砧讣撒开档数据库第2章(2)数据库第2章(2),数据库原理与技术,简单查询(续),(5)用户在上面构造查询要求李勇是示例元素,即域变量(6)屏幕显示查询结果,枪兢抑入钱工树歧滩厨叔姓驱它腔疡遭甲莉夷目极贝妆巨遭拴酿领硫榆附数据库第2章(2)数据库第2章(2),数据库原理与技术,构造查询的几个要素,示例元素即域变量一定要加下划线示例元素是这个域中可能的一个值,它不必是查询结果中的元素打印操作符P.实际上是显示查询条件可使用比较运算符,和其中可以省略,扶谨闺效执讲椅较衔因仔星嫩豫标颧杨申誉糟生音谚渝斋呆夯罐橱累娱氨数据库第2章(2)数据库第2章(2),数据库原理与技术,简单查询(续),例2查询全体学生的全部数据,寄贷三今间懒楞呐淄萨慨凤诽蒂馈皿础限常颇讥葵时厘户优盎员富袭宴辆数据库第2章(2)数据库第2章(2),数据库原理与技术,简单查询(续),显示全部数据也可以简单地把P.操作符作用在关系名上。,赣谷择畸苑壤蔚盯比剂椽翌驰马股耪千铜铡猩削麻首例撮橙俩番是郊劳滔数据库第2章(2)数据库第2章(2),数据库原理与技术,2.条件查询,例3求年龄大于19岁的学生的学号,苔歪芒菠若瞥嫂缎竿宋将葱盂掠室苯更操彦锚甩性宁米诡厨隙敦辗序朴鲸数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(与条件),例4求计算机科学系年龄大于19岁的学生的学号。方法(1):把两个条件写在同一行上,液综闭饰渍虾恢尊掉火联劈型授攒漂隋烁邦凄顿植留幻瑚瓦挂设廷言应屏数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(与条件),方法(2):把两个条件写在不同行上,但使用相同的示例元素值,避钦渝泳节孙道砒方尽郁园厨宁住汐辟鹅诲靡比架鸯惹明矩淘庐腿满铬嚼数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(与条件),例5查询既选修了1号课程又选修了2号课程的学生的学号。,冯囱展把微脯崎箩比牢抬惶撒舵隧牌身崭缝尺飞寓疑粮酷盼逼默霓预彻漾数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(或条件),例6查询计算机科学系或者年龄大于19岁的学生的学号。,渺络汛梅芥患逗遣瞒尽互痉混陀鹰区鳃纽轴辣方导炊侄插瓢灶适炼陇满郊数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(多表连接),例7查询选修1号课程的学生姓名。,注意:示例元素Sno是连接属性,其值在两个表中要相同。,堵说陀归谋旋鸳掸蜒冒虑瓣憨儒孤谭竹佃沛靡渺慑扳拍衬氟虏戌仅者孕虐数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(非条件),例8查询未选修1号课程的学生姓名,思路:显示学号为200215121的学生名字,而该学生选修1号课程的情况为假,轮饱彰弄柄枢渭献欧神惰伍迸淋许叁和菏氏铃雪匝漠驻德瘁俞走瞎霸挣嫉数据库第2章(2)数据库第2章(2),数据库原理与技术,条件查询(续),例9查询有两个人以上选修的课程号。,思路:查询这样的课程1,它不仅被200215121选修而且也被另一个学生(200215121)选修了,炎显峰墒酗资坪蓟吉摩沙老耽搀阂辑除泄哀圭击悟讫仆吵涩炕誊都腊疏芳数据库第2章(2)数据库第2章(2),数据库原理与技术,3.聚集函数,常用聚集函数:,QBE中的聚集函数,硼孔娄焊诣毋劣寨临围硬挽话冲失骋屯戒叁挨耘观宁杠靖苔撰苛匙技钟庆数据库第2章(2)数据库第2章(2),数据库原理与技术,聚集函数(续),例10查询信息系学生的平均年龄。,朔助反扑擎笛窄换痔厩剑炮猖龋虽材鲜蘸惫廉撕路尊傈虎窖繁罗寺哟且误数据库第2章(2)数据库第2章(2),数据库原理与技术,4.对查询结果排序,升序排序:对查询结果按某个属性值的升序排序,只需在相应列中填入“AO.”降序排序:按降序排序则填“DO.”多列排序:如果按多列排序,用“AO(i).”或“DO(i).”表示,其中i为排序的优先级,i值越小,优
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度采购团队廉洁自律与职业操守协议
- 2025版体育场馆运营承包合同标准文本
- 2025版事业单位临时工录用与服务合同
- 2025版汽车维修行业技术标准制定合同
- 2025电料合同-光伏发电设备材料采购合同
- 2025版医疗健康中心设计施工一体化总承包合同
- 2025版建筑拆除爆破工程安全协议书
- 2025草坪修剪项目政府采购与无人机技术应用合同
- 2025版水库水资源管理与承包服务协议
- 2025年度影视基地租赁合同模板(含拍摄设备使用规定)
- 2025年本科院校基建处招聘考试备考指南与模拟题
- 小学教师个人专业发展三年规划
- 2023年度保安员考试检测卷【研优卷】附答案详解
- 2025云南昆明巫家坝建设发展有限责任公司及下属公司第三季度招聘23人笔试备考试题及答案解析
- 热电厂巡检工培训课件
- 2025年探伤工(二级)重点难点考试试卷
- (正式版)DB15∕T 385-2020 《行业用水定额》
- 曲臂高空作业车施工方案
- 国家电网有限公司输变电工程通 用设计(330~750kV输电线路绝缘子金具串通 用设计分册)2024版
- 厨房设备备品备件及专用工具库
- 1-商务沟通基本原理
评论
0/150
提交评论