基于学生表S和学生选课表SC两个数据库表,它们的结构如下:
S(学号,姓名,性别,年龄)其中学号、姓名和性别为C型字段,年龄为N型字段。
SC(学号,课程号,成绩),其中学号和课程号为C型字段,成绩为N型字段(初始为空值)。
查询有选课记录,但没有考试成绩的学生的学号和课程号,正确的SQL语句是()。
A.SELECT 学号,课程号 FROM sc WHERE 成绩=""
B.SELECT 学号,课程号 FROM sc WHERE 成绩=NULL
C.SELECT 学号,课程号 FROM sc WHERE 成绩 IS NULL
D.SELEC T学号,课程号 FROM sc WHERE 成绩
参考答案:C
解析:
[知识点] 空值查询 [评析] 在SC表中成绩字段为数值型数据且初始为空值,本题要求查询出有选课记录,但没有考试成绩的学生的学号和课程号,只要成绩记录为空就说明没有考试成绩,即查询成绩字段为空值。查询空值时要使用IS NULL,而=NULL是无效的,因为空值不是一个确定的值,所以不能使用“=”这样的运算符进行比较,所以选项C的语法是正确的。