上海大学数据库上机作业上机练习5作业_第1页
上海大学数据库上机作业上机练习5作业_第2页
上海大学数据库上机作业上机练习5作业_第3页
全文预览已结束

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上上大学数据库上机作业数据库系统与应用上机习题* 第五部分、SQL高级应用一、做书上第十章的例题二、利用上次上机的学生_课程数据库1. 求选修了高等数学的学生学号和姓名。USE 学生课程SELECT 学生.学号,姓名,选课.课程号FROM 学生,选课,课程WHERE 学生.学号=选课.学号 AND 课程.课程号=选课.课程号AND 课程名='高等数学'2. 求C1课程的成绩高于张三的学生学号和成绩。USE 学生课程SELECT x.学号,x.成绩FROM 选课 x,选课 yWHERE x.课程号='C1' AND x.成绩>y.成绩

2、 AND y.学号='S4' AND y.课程号='C1'ORDER BY x.学号 DESC第二种:USE 学生课程SELECT 学号,成绩FROM 选课WHERE 课程号='C1' AND 成绩>(SELECT 成绩 FROM 选课,学生 WHERE 课程号='C1'AND 姓名='张三'AND 选课.学号=学生.学号)3. 求其他系中比自动化学院某一学生年龄小的学生。USE 学生课程SELECT 学号,姓名,年龄,单位FROM 学生WHERE 年龄<(SELECT MAX(年龄) FROM 学生

3、WHERE 单位='自动化学院') AND 单位!='自动化学院' ORDER BY 学号 DESC4. 求其他系中比自动化学院学生年龄都小的学生。USE 学生课程SELECT 学号,姓名,年龄,单位FROM 学生WHERE 年龄<(SELECT MIN(年龄) FROM 学生 WHERE 单位='自动化学院') AND 单位!='自动化学院' ORDER BY 学号 DESC5. 求选修了C2课程的学生的姓名。USE 学生课程SELECT 姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 课程号='

4、;C2'6. 求没有选修C2课程的学生的姓名。USE 学生课程SELECT DISTINCT 姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 姓名 not in (SELECT 姓名FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 选课.课程号='C2')7. 查询选修了C1、C2、C3、C7全部四门课程的学生的姓名。USE 学生课程SELECT 姓名FROM 学生WHERE 学号 in(SELECT 学号 FROM 选课 WHERE 课程号='C1') AND 学号 in(SELECT 学号 FROM 选课 WHER

5、E 课程号='C2') AND 学号 in(SELECT 学号 FROM 选课 WHERE 课程号='C3') AND 学号 in(SELECT 学号 FROM 选课 WHERE 课程号='C7')第二种:USE 学生课程SELECT 姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 课程号 in('C1','C2','C3','C7')GROUP BY 姓名HAVING COUNT(*)=4 8. 求至少选修了学号为S2的学生所选修的全部课程的学生的学号和姓名。U

6、SE 学生课程SELECT 学生.学号,姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 选课.课程号 in(SELECT 课程号 FROM 选课 WHERE 学号='S2')AND 选课.学号!='S2'GROUP BY 学生.学号,姓名HAVING COUNT(选课.学号)>=(SELECT COUNT(*)FROM 选课 WHERE 学号='S2')9. 选修了C1课程,同时也选修C2课程的学生学号。USE 学生课程SELECT 学号FROM 选课WHERE 课程号='C1' AND 学号 in(SE

7、LECT 学号 FROM 选课 WHERE 课程号='C2')10. 求学生总人数。USE 学生课程SELECT COUNT(学号)AS 总人数FROM 学生11. 求课程和选修该课程的人数。USE 学生课程SELECT 选课.课程号,课程名,COUNT(学号)AS 选修该课程人数FROM 选课,课程WHERE 选课.课程号=课程.课程号 GROUP BY 选课.课程号,课程名12. 求选修课超过3门的学生学号。USE 学生课程SELECT 学号,COUNT(课程号)AS 选课数FROM 选课GROUP BY 学号HAVING COUNT(课程号)>313.编写一个程序,计算各学院的总人数及男女生的人数,生成下图的查询。USE 学生课程SELECT 单位,COUNT(*)AS 总人数,SUM(CASE 性别 WHEN '

温馨提示

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

评论

0/150

提交评论