SQL语句课堂练习题及答案.ppt_第1页
SQL语句课堂练习题及答案.ppt_第2页
SQL语句课堂练习题及答案.ppt_第3页
SQL语句课堂练习题及答案.ppt_第4页
SQL语句课堂练习题及答案.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

An Introduction to Database System 第三章 综合练习 设有三个关系: S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 试用SQL语句表示下 列查询语句 3、查询学号为S3学生所学课程的课程名 与任课教师名 4、查询至少选修LIU老师所授课程中一 门课程的女学生姓名 5、查询WANG同学不学的课程的课程 号 6、查询至少选修两门课的学生学号 7、查询全部学生都选修的课程的课程号 与课程名 8、查询选修课程包含LIU老师所授全部 课程的学生学号。 1、查询LIU老师所授课程 的课程号和课程名 2、查询年龄大于23岁的男 学生的学号和姓名 An Introduction to Database System 第三章 综合练习 设有三个关系: S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 试用SQL语句表示下 列查询语句 10、求LIU老师所授课程的每门课程的平均 成绩 11、检索姓名以L打头的所有学生的姓名和 年龄。 12、求年龄大于所有女同学年龄的男学生姓 名和年龄。 13、往关系C中插一个课程元组( C8,VC+,BAO) 14、把选修LIU老师课程的女同学选课元组 全部删去。 15、把低于所有课程总平均成绩的男同学成 绩提高5% . 9、统计每门课程的学生选修人 数(超过10人的课程才统计)。 要求显示课程号和人数,查询结 果按人数降序排列,若人数相同 ,按课程号升序排列。 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 1、查询LIU老师所授课程的课程号和课程名 Select cno,cname from C where teacher=LIU 涉及到的表: C(cno,cname,teacher) An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 2、查询年龄大于23岁的男学生的学号和姓名 Select sno,sname from S where age23 and sex=M 涉及到的表: S(sno,sname,sex,age) 方法一:一般的查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 2、查询年龄大于23岁的男学生的学号和姓名 Select sno,sname from S where age23 and sno in (select sno from s where sex=男) 涉及到的表: S(sno,sname,sex,age) 方法二:用IN嵌套查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 2、查询年龄大于23岁的男学生的学号和姓名 Select sx.sno, sx.sname from s sx where sx.age23 and exists (select * from s sy where sy.sex=男 and sy.sno=sx.sno) 涉及到的表: S(sno,sname,sex,age) 方法三:用EXISTS嵌套查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 2、查询年龄大于23岁的男学生的学号和姓名 Select sx.sno, sx.sname from s sx, s xy where sx.sno=sy.sno and sx.age23 and sy.sex=男 涉及到的表: Sx(sno,sname,sex,age) 方法四:自连接 涉及到的表: Sy(sno,sname,sex,age) An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 2、查询年龄大于23岁的男学生的学号和姓名 Select sno,sname from S where age23 Intersect Select sno,sname from S where sex=男 涉及到的表: S(sno,sname,sex,age) 方法五:集合查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 3、查询学号为S3学生所学课程的课程名与任课教师名 Select cname ,teacher from SC,C where SC.cno=C.cno and sno=S3 涉及到的表: SC(sno,cno,grade) C(cno,cname,teacher) 方法一:连接查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 3、查询学号为S3学生所学课程的课程名与任课教师名 Select cname ,teacher from C where cno in ( select cno from SC where sno=S3 ) 涉及到的表: SC(sno,cno,grade) C(cno,cname,teacher) 方法二:IN嵌套查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 3、查询学号为S3学生所学课程的课程名与任课教师名 Select cname ,teacher from C where exists (select * from SC where sno=S3 and SC.cno=C.cno) 涉及到的表: SC(sno,cno,grade) C(cno,cname,teacher) 方法三:EXIST嵌套查询 An Introduction to Database System 综合练习答案 4、查询至少选修LIU老师所授课程中一门课程的女学生姓名 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname from S,SC,C where S.sno=SC.sno and SC.cno=C.cno and sex=F and teacher=LIU 方法一:连接查询 涉及到全部的表:S,SC,C An Introduction to Database System 综合练习答案 4、查询至少选修LIU老师所授课程中一门课程的女学生姓名 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname from S where sex=F and sno in (select sno from SC where cno in (select cno from C where teacher=LIU) 方法二:IN嵌套查询 涉及到全部的表:S,SC,C An Introduction to Database System 综合练习答案 4、查询至少选修LIU老师所授课程中一门课程的女学生姓名 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname from S where sex=F and exists (select * from C where teacher=LIU and exists (select * from SC where SC.sno=S.sno and SC.cno=C.cno ) 方法三:EXISTS嵌套查询 涉及到全部的表:S,SC,C An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 5、查询WANG同学不学的课程的课程号 Select cno from C where not exists (select * from S,SC where S.sno=SC.sno and SC.cno=C.cno and sname=WANG) 涉及到全部的表:S,SC,C 方法一:NOT EXISTS嵌套查询 An Introduction to Database System 综合练习答案 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) 5、查询WANG同学不学的课程的课程号 Select cno from C Except Select distinct cno from S, SC where S.sno=SC.sno and sname=WANG 涉及到全部的表:S,SC,C 方法二:集合查询 An Introduction to Database System 综合练习答案 6、查询至少选修两门课的学生学号 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sno from SC group by sno having count(*)=2 涉及到的表:SC An Introduction to Database System 综合练习答案 7、查询全部学生都选修的课程的课程号与课程名 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select cno,cname from C where not exists (select * from S where not exists (select * from SC where sno=S.sno and cno=C.cno) 涉及到全部的表:S,SC,C An Introduction to Database System 综合练习答案 8、查询选修课程包含LIU老师所授全部课程的学生学号 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select distinct sno from SC as X where not exists (select * from C where teacher=LIU and not exists (select * from SC as Y where Y.sno=X.sno and Y.cno=C.cno) 涉及到的表:SC,C An Introduction to Database System 综合练习答案 9、统计每门课程的学生选修人数(超过10人的课程才 统计)。要求显示课程号和人数,查询结果按人数降序 排列,若人数相同,按课程号升序排列 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select cno,count(sno) from SC group by cno having count(*)10 order by 2 desc,1 涉及到的表:SC An Introduction to Database System 综合练习答案 10、求LIU老师所授课程的每门课程的平均成绩 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select C.cno,avg(grade) from SC,C where SC.cno=C.cno and teacher=LIU group by C.cno 涉及到的表:SC,C An Introduction to Database System 综合练习答案 11、检索姓名以L打头的所有学生的姓名和年龄 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname,age from S where sname like L% 涉及到的表:S An Introduction to Database System 综合练习答案 12、求年龄大于所有女同学年龄的男学生姓名和年龄 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname,age from S where sex=M and ageall (select age from S where sex=F) 涉及到的表:S 方法一:all An Introduction to Database System 综合练习答案 12、求年龄大于所有女同学年龄的男学生姓名和年龄 S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher) Select sname,age from S where sex=M and age (select max(age) from S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论