问题
单项选择题
题基于图书表、读者表和借阅表三个数据库表,它们的结构如下:
图书(图书编号,书名,第一作者,出版社):图书编号、书名、第一作者和出版社为C型字段,图书编号为主关键字;
读者(借书证号,单位,姓名,职称):借书证号、单位、姓名、职称为C型字段,借书证号为主关键字;
借阅(借书证号,图书编号,借书日期,还书日期):借书证号和图书编号为C型字段,借书日期和还书日期为D型字段,还书日期默认值为NULL,借书证号和图书编号共同构成主关键字。
查询尚未归还书的图书编号和借书日期,正确的SQL语句是()。
A.SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期=""
B.SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期=NULL
C.SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期 IS NULL
D.SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期
答案
参考答案:C
解析:
[知识点] SQL语句
[评析] 在借阅表中还书日期字段为D型且默认值为空值,本题要求查询出尚未归还书的图书编号和借书日期,只要还书日期为空就说明没有归还书,即查询还书日期字段为空值。查询空值时要使用IS NULL,而=NULL是无效的,因为空值不是一个确定的值,所以不能使用“=”这样的运算符进行比较,所以选项c是正确的。