【sql:练习题10】查询没学过"张三"老师讲授的任一门课程的学生姓名
题目:查询没学过"张三"老师讲授的任一门课程的学生姓名
分析:这个题目跟之前的题目很相似,思路是先查出 学过"张三"老师讲授的任一门课程的学生姓名,然后再反向查
学过"张三"老师讲授的任一门课程的学生姓名?
先找"张三"老师 的teacher id 通过 teacher id 找到对应的课程,然后在学生分数表中根据course in 找到学过 张三"老师 授课的学生群体,再通过学生表 not in
找到 没有学过张三"老师 授课的学生群体
sql:
SELECT student.* FROM student WHERE student.id NOT IN
(SELECT student_score.studentid FROM student_score
WHERE student_score.courseid IN
(SELECT student_course.id FROM student_course,teacher
WHERE student_course.teacherid = teacher.id AND teacher.teacher_name = '张三'));