设某数据库中有学生表(学号, 姓名, 所在系) 和选课表(学号, 课程号, 成绩) 。 现要查询没选课的学生姓名和所在系。 下列语句中能够实现该查询要求的是( )。
SELECT 姓名, 所在系 FROM 学生表 a LEFT JOIN 选课表 bON a.学号=b.学号 WHERE a.学号 IS NULL
SELECT 姓名, 所在系 FROM 学生表 a LEFT JOIN 选课表 bON a.学号=b.学号 WHERE b.学号 IS NULL
SELECT 姓名, 所在系 FROM 学生表 a RIGHT JOIN 选课表 bON a.学号=b.学号 WHERE a.学号 IS NULL
SELECT 姓名, 所在系 FROM 学生表 a RIGHT JOIN 选课表 bON a.学号=b.学号 WHERE b.学号 IS NULL
题中根据课程查询姓名和所在系, 故要 LEFT JOIN。 LEFT JOIN 以左表为基础, 左表全部显示而右表部分显示, 右表不足的地方均为 NULL。 本次查询目标是没有选课的学生, 而这些学生在选课表中是没有信息的, 即 WHERE b.学号 IS NULL。