单选题 有教师表(教师号,姓名,职称,所在系)和授课表(教师号,课程号,授课学年,授课时数),同一门课程可由多名教师讲授,同一名教师也可讲授多门课程。查询从未被“教授”讲授过的课程的课程号,正确的语句是______
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操作即可得到所有未被教授讲授过的课程。