补充SQL练习(参考答案)

  • 格式:ppt
  • 大小:87.50 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Tianqing Zhang SCU 5
查询选课门数最多的学生姓名及其选课门数。 select s.name, count(*) from student s, c_s, course c where s.id=c_s.student_id and c_s.course_no=c.course_no group by s.id, s.name having count(*)>= all (select count(*) from student s, c_s, course c where s.id=c_s.student_id and c_s.course_no=c.course_no group by s.id);
3
查询选了“数据库原理”课程的所有学生的学号和姓名。 select id, s.name from student s, c_s, course c where s.id=c_s.student_id and c_s.course_no=c.course_no and c.name='数据库原理';
Tianqing Zhang SCU 2
补充练习
• 查询所有没有被选过的课程。 • Select * from course c where not exists (select * from c_s where c.course_no=c_s.course_no);
Tianqing Zhang SCU
• 创建上述关系及部分数据的的SQL语句见文件 createdb.sql • 请完成以下查询:
– – – – – 查询所有没有被选过的课程。 查询选了“数据库原理”课程的所有学生的学号和姓名。 查询选课总学生最多的学生的姓名及其选课总学分。 查询选课门数最多的学生姓名及其选课门数。 查询选了其所在系开始所有课程的学生姓名。
补充SQL练习
Tianqing Zhang School of Computer (School of Software) SCU 2006-2009
补充练习
• 有以下三个关系的学生选课数据库
– 学生(学号,姓名,性别,所在系,生日) – 课程(课程号,课程名,学分,开课系) – 选课(学号,课程号,成绩)
TianBiblioteka Baiduing Zhang SCU
4
查询选课总分最多的学生的姓名及其选课总学分。 select s.name, sum (credit) from student s, c_s, course c where s.id=c_s.student_id and c_s.course_no=c.course_no group by s.id, s.name having sum(credit)>= all (select sum(credit) from student s, c_s, course c where s.id=c_s.student_id and c_s.course_no=c.course_no group by s.id);
Tianqing Zhang SCU 6
查询选了其所在系开始所有课程的学生姓名。 select name from student s where not exists ((select course_no from course where dept=s.dept) except (select course_no from c_s where s.id=c_s.student_id));
Tianqing Zhang SCU 7