考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

SQL中,要查询book表中所有书名中以“中国“开头的书籍的价格,可用()语句
A.  SELECT price FROM book WHERE book_name = ‘中国*’
B. SELECT price FROM book WHERE book_name LIKE ‘中国*’
C. SELECT price FROM book WHERE book_name = ‘中国%’
D. SELECT price FROM book WHERE book_name LIKE ‘中国%’
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

正确答案是:D: SELECT price FROM book WHERE book_name LIKE '中国%'

分析:

在SQL中,进行字符串匹配时,通常使用`LIKE`关键字。`LIKE`允许使用通配符来进行模式匹配:

1. `%`:表示零个或多个字符。
2. `_`:表示单个字符。

选项分析:

- A: `SELECT price FROM book WHERE book_name = '中国*'`:
- 使用了等号`=`,这表示精确匹配,而不是模式匹配。
- `*`在SQL标准的字符串匹配中并不是通配符,因此这个语句会试图匹配书名完全等于`中国*`的记录,这通常不是预期的行为。

- B: `SELECT price FROM book WHERE book_name LIKE '中国*'`:
- 使用了`LIKE`关键字,但`*`不是标准SQL中的通配符。
- 这会导致无法正确匹配以“中国”开头的书名。

- C: `SELECT price FROM book WHERE book_name = '中国%'`:
- 使用了等号`=`,这表示精确匹配,而不是模式匹配。
- 这会试图匹配书名完全等于`中国%`的记录,不符合需求。

- D: `SELECT price FROM book WHERE book_name LIKE '中国%'`:
- 正确使用了`LIKE`关键字和`%`通配符。
- `%`通配符用于匹配以“中国”开头的书名后面可以跟任意字符的情况。

因此,选项D是正确的选择。