数据库系统原理--实验二 数据库定义与操作语言--习题答案

题目

导入ScoreDB数据库,按照“实验2数据”,修改四张表内各个字段的类型以及宽度。完成后,实现以下操作:

2.1数据查询

  1. 查询选修了“数据结构”课程的同学姓名。
  2. 查询选修了课程号为’001’或’002’课程的学生学号、课程号和分数。
  3. 查询学过课程号为’001’但是没有学过课程号为’002’的课程的学生学号、课程号和分数。
  4. 查询至少有一门课与学号为’0700001’的学生所学相同的学生的学号和姓名。
  5. 查询至少选修了学号为“0700001”学生所选修的所有课程的学生姓名。
  6. 查询本月过生日的学生信息。
  7. 查询没有成绩的学生信息。(使用IN语句)
  8. 查询(没有)选修过课程的学生姓名。(使用IN语句)
  9. 查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩。
  10. 查找选修过课程名中包含“系统”的课程的同学学号、姓名和所在班级。
  11. 查找同时选修过“高等数学”和“离散数学”两门课程的同学学号、姓名以及该同学所选修的所有课程的课程名和相应成绩,按学号(升序)、成绩(降序)排序输出。
  12. 查询所有学生的选修信息,显示信息包括学号,选修门数,平均分和总分。
    13.查询先修课是“计算机基础”的课程。(分别用自连接和IN语句实现)
  13. 查询至少有一门课程成绩超过85分的所有学生的信息,显示信息包括学号、课程号和分数。
  14. 查询至少有两门课程成绩超过85分的所有学生的学号。
  15. 查询平均成绩超过80分且选修3门及以上的所有学生的信息,显示信息包括学号、课程数目和分数。
  16. 查询所选修课程的成绩大于所有“002”号课程成绩的同学学号及相应课程的课程号和成绩。
  17. 查询选修了所有课程的学生姓名。

2.2数据操纵

  1. 将所有选修001课程的同学的成绩增加5分。
  2. 将李小勇同学选修课程的成绩增加30%。
  3. 将每个班级的学生人数填入到班级表的ClassNum列中。
  4. 在Student表中添加一条学生记录(学号:0800016,姓名:张三,籍贯:福建)。
  5. 求出每门课程的选修人数,把结果存放在新表CountC中。(用SELECT INTO语句实现)
  6. 求出每个学生的选修门数和平均分,把结果存放在新表CountSC中。(用INSERT SELECT语句实现)
  7. 删除刘方晨同学所有的选修记录。
  8. 删除选修了“操作系统”课程的选课记录。

2.3视图

  1. 创建视图vw1,该视图包含福建省的女学生信息。
  2. 创建视图vw2,该视图包含学生的学号、姓名、所选修的课程的课程号、课程名和成绩。
  3. 创建视图vw3,该视图每门课程的课程号、课程名、选修人数和平均分。
  4. 建立一个新的视图vw4,该视图包含学生姓名和年龄字段。将vw4中的年龄增加1岁。观察其运行结果并分析原因。
  5. 删除视图vw1中学号为 ‘0800007’ 的数据。
发布了94 篇原创文章 · 获赞 40 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_46218781/article/details/105340260