单选题
有教师表(教师号,姓名,职称,所在系)和授课表(教师号,课程号,授课学年,授课时数),同一门课程可由多名教师讲授,同一名教师也可讲授多门课程。查询从未被“教授”讲授过的课程的课程号,正确的语句是______ A.SELECT课程号FROM授课表a JOIN教师表b ON a.教师号=b.教师号 WHERE职称!='教授' B.SELECT课程号FROM授课表a RIGHT OUTER JOIN教师表b ON a.教师号=b.教师号 WHERE职称!='教授'AND a.课程号IS NOT NULL C.SELECT课程号FROM授课表WHERE课程号NOTIN( SELECT课程号FROM授课表a JOIN教师表b ON a.教师号=b.教师号 WHERE职称'教授') D.SELECT课程号FROM授课表WHERE课程号IN( SELECT课程号FROM授课表a JOIN教师表b ON a.教师号=b.教师号 WHERE职称!='教授')
【正确答案】
C
【答案解析】[解析] 本题中需要查询从未被“教授”讲授过的课程的课程号,可以先查询出所有被教授讲授过的课程,使用如下SQL语句可以实现: select课程号from授课表a JOIN教师表b On a.教师号=b.教师号 where职称='教授' 找到所有被教授讲授的课程后,再通过NOT IN操作即可得到所有未被教授讲授过的课程。