13.查询没学过"张三"⽼师讲授的任⼀⻔课程的学⽣姓名
-- 查询出张三老师教的哪些课
SELECT course.CId
FROM course
LEFT JOIN teacher
ON course.TId = teacher.TId
WHERE teacher.Tname = '张三'
14.查询两⻔及其以上不及格课程的同学的学号,姓名及其平均成绩
第一步:查询出同学不及格的课程数目
下面就是连接表的过程,比较简单
15.检索" 01 "课程分数⼩于 60,按分数降序排列的学⽣信息
和上面题目类似的是,都是先查出来结果表,然后再和数据表做一个结合。这里参考答案,发现有一种简便的写法,不必重新像上面一题那样,将查询出来的结果表作为一张新表,而是先使用join将两张表结合,然后在后面加上查询的条件
16.按平均成绩从⾼到低显示所有学⽣的所有课程的成绩以及平均成绩
先查询出平均成绩,不做排序,因为给它排了序也没有用
然后结合两张表写出需要的结果,并排序
17.查询各科成绩最⾼分、最低分和平均分: 以如下形式显示:课程 ID,课程 name,最⾼分,最低 分,平均分,及格率,中等率,优良率,优秀率 及格为>=60,中等为:70-80,优良为:80-90,优秀 为:>=90 要求输出课程号和选修⼈数,查询结果按⼈数降序排列,若⼈数相同,按课程号升序排列
18.按各科平均成绩进⾏排序,并显示排名, Score 重复时保留名次空缺
待续