免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用关系代数表示数据查询的典型例子例设 教学数据库中有3个关系: 学生关系S(SNO,SNAME,AGE,SEX) 学习关系SC(SNO,CNO,GRADE) 课程关系C(CNO,CNAME,TEACHER) 下面用关系代数表达式和SQL语句分别表达每个查询语句。(1) 检索学习课程号为C2的学生学号与成绩。SNO,GRADE(CNO=C2(SC)SELECT SNO, GRADE FROM SC WHERE CNO=C2(2) 检索学习课程号为C2的学生学号与姓名SNO,SNAME(CNO=C2(SSC)由于这个查询涉及到两个关系S和SC,因此先对这两个关系进行自然连接,同一位学生的有关的信息,然后再执行选择投影操作。此查询亦可等价地写成:SNO,SNAME(S)(SNO(CNO=C2(SC))这个表达式中自然连接的右分量为”学了C2课的学生学号的集合”。这个表达式比前一个表达式优化,执行起来要省时间,省空间。 SELECTSNO,SNAME FROM S WHERE EXISTS (SELECT * FROM SC WHERESNO=S.SNO ANDCNO=C2)(3)检索选修课程名为MATHS的学生学号与姓名。SNO,SANME(CNAME=MATHS(SSCC)SELECT S.SNO, SNAME FROM S, SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND CNAME=MATHS(4)检索选修课程号为C2或C4的学生学号。SNO(CNO=C2CNO=C4(SC)SELECT S.SNO, SNAME FROM S, SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND CNAME=MATHS(5) 检索至少选修课程号为C2或C4的学生学号。1(1=42=C25=C4(SCSC)) SELECTSNO FROM SC AS X, SC AS Y WHERE X.SNO=Y.SNO AND X.CNO=C2 AND Y.CNO=C4这里(SCSC)表示关系SC自身相乘的乘积操作,其中数字1,2,4,5都为它的结果关系中的属性序号。比较这一题与上一题的差别。(6) 检索不学C2课的学生姓名与年龄。SNAME,AGE(S)SNAME,AGE(CNO=C2(SSC))这个表达式用了差运算,差运算的左分量为”全体学生的姓名和年龄”,右分量为”学了C2课的学生姓名与年龄”。 SELECT SNAME, AGE FROM S WHERESNO NOT IN (SELECTSNO FROM SC WHERECNO=C2)或SELECT SNMAE,AGE FROM S WHERE NOT EXISTS (SELECT * FROM SC WHERE SC.SNO=S.SNO ANDCNO=C2)(7)检索学习全部课程的学生姓名。编写这个查询语句的关系代数过程如下: (a) 学生选课情况可用SNO,CNO(SC)表示;(b) 全部课程可用CNO(C)表示;(c) 学了全部课程的学生学号可用除法操作表示。 操作结果为学号SNO的集合,该集合中每个学生(对应SNO)与C中任一门课程号CNO配在一起都在SCO,CNO(SC)中出现(即SC中出现),所以结果中每个学生都学了全部的课程(这是”除法”操作的含义):SNO,CNO(SC)CNO(C)(d) 从SNO求学生姓名SNAME,可以用自然连结和投影操作组合而成:SNAME(S(SNO,CNO(SC)CNO(C)这就是最后得到的关系代数表达式。SELECT SNAME FROM S WHERE NOT EXISTS (SELECT * FROM C WHERE NOT EXISTS (SELECT * FROM SC WHERE SC.SNO=S.SNO AND SC.CNO=C.CNO)(8) 检索所学课程包含S3所学课程的学生学号。注意:学生S3可能学多门课程,所以要用到除法操作来表达此查询语句。 学生选课情况可用操作 SNO,CNO(SC)表示; 所学课程包含学生S3所学课程的学生学号,可以用除法操作求得: SNO,CNO(SC) CNO(SNO=S3(SC))SELECT DISTINCTSNO FROM SC X WHERE NOT EXISTS (SELECT * FROM SC Y WHERE Y.SNO=S3 AND NOT EXISTS (SELECT * FROM SC Z WHERE Z.SNO=X.SNO AND Z.CNO=Y.CNO) (9) 将新课程元组(C10,PHYSICS,YU)插入到关系C中 (C(C10,PHYSICS,YU)INSERT INTO C VALUES(C10,PHYSICS,YU)(10) 将学号S4选修课程号为C4的成绩改为85分。(SC-(S4,C4,?)(S4,C4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广州市诫勉工作制度
- 廉政勤政谈话工作制度
- 建华区民政工作制度
- 彩超室疫情工作制度
- 征地工作组工作制度
- 性别平等教育工作制度
- 接受监督检查工作制度
- 第1框探问人生目标
- 2026年工艺联锁摘除恢复审批试题
- 2026年完整的购房合同(1篇)
- 2026陕西宝鸡市凤翔区事业单位招聘高层次人才30人备考题库含答案详解(考试直接用)
- 集群无人机自主编队研究课题申报书
- 江苏省九校2026届高三下学期3月联考 政治+答案
- 2026年西安医学院第一附属医院招聘(62人)笔试备考试题及答案解析
- 深度解析(2026)《SYT 7776-2024 石油天然气风险勘探目标评价规范》
- 2026年1月浙江省高考首考英语试卷真题完整版(含答案+听力)
- 外墙防水施工工艺方案
- 2026年陕西国防工业职业技术学院单招职业技能考试题库附答案解析
- 2025年新《治安管理处罚法》知识考试题库及答案
- 2026年安全员之C证(专职安全员)考试题库500道附参考答案【完整版】
- 《用事实说话-透明化沟通的8项原则》读书笔记
评论
0/150
提交评论