问题 单项选择题

题基于图书表、读者表和借阅表三个数据库表,它们的结构如下:

图书(图书编号,书名,第一作者,出版社):图书编号、书名、第一作者和出版社为C型字段,图书编号为主关键字;

读者(借书证号,单位,姓名,职称):借书证号、单位、姓名、职称为C型字段,借书证号为主关键字;

借阅(借书证号,图书编号,借书日期,还书日期):借书证号和图书编号为C型字段,借书日期和还书日期为D型字段,还书日期默认值为NULL,借书证号和图书编号共同构成主关键字。

查询单位名称中含“北京”字样的所有读者的借书证号和姓名,正确的SQL语句是()。

A.SELECT 借书证号,姓名 FROM 读者 WHERE 单位="北京%"

B.SELECT 借书证号,姓名 FROM 读者 WHERE 单位="北京*"

C.SELECT 借书证号,姓名 FROM 读者 WHERE 单位 LIKE "北京*"

D.SELECT 借书证号,姓名 FROM 读者 WHERE 单位 LIKE "%北京%"

答案

参考答案:D

解析:

[知识点] SQL语句

[评析] SQL中查询应使用SELECT命令,格式为:SELECT[字段名]FROM[表名]WHERE[条件)。根据题意查询单位名称中含“北京”字样的所有读者的借书证号和姓名,所以只要在读者表中查询,FROM后应指明是读者表,指定查询的条件应使用WHERE关键字,接着查询客户名称中有“北京”字样,这是一个字符串匹配的查询,显然应该使用LIKE运算符。LIKE子句的使用格式为:字段LIKE字符串表达式,其中字符串表达式中可以使用通配符号,%表示匹配包含零个或多个字符的任意字符串,表示任意一个字符。因为名称字段的数据类型是字符型数据,所以LIKE后面应该是一个字符串,必须用双引号作为定界符,因此查询条件应书写为:WHERE单位LIKE“%北京%”,所以选项D是正确的。

单项选择题
选择题