首页 > 试题广场 >

设有一个关系:DEPT(DNO,DNAME),如果要找出倒数

[单选题]
设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE__________.
  • ‘_ _ W _ %’
  • ‘_ % W _ _’
  • ‘_ W _ _’
  • ‘_ W _ %’
B.
%匹配0个或多个字符
_匹配任意一个字符
发表于 2015-04-07 15:26:21 回复(3)
“%”表示0个或者多个字符,那么w是第3个字符,表示为“%w_ _”,而又包含至少4个字符,所以是“_%w_ _”。

发表于 2015-10-04 15:37:25 回复(1)
为什么c不可以了?
"_"代表的是任意字符嘛
发表于 2017-02-08 23:05:44 回复(1)

答案:B。

在SQL 语言中,%和_表示的是通配符(通配符指的是一种特殊语句,用来进行模糊查询的,在匹配字符串时,可以使用它来代替一个或多个真正字符,当不知道真正字符或者懒得输入完整名字时,常常使用通配符代替一个或多个真正的字符),其中“%”表示的是0个或多个字符,而“_”表示的是一个字符。

在本题的查找条件中,要求倒数第三个字母为‘W’,所以,字符‘W’后面有两个其他字符,可以表示成“W_ _”,并且还要求至少包含4个字母,而当以“%”开头时,它表示的字符可以不存在,所以,开头应加一个“_”,那么查询条件子句应写成WHERE DNAME LIKE '_ % W _ _'。

所以,本题的答案为B。

需要注意的是,除了以上介绍的两种通配符以外,SQL语言中还有两个通配符,[charlist]表示字符列中的任何单一字符,[^charlist]或者[!charlist]表示不在字符列中的任何一个字符。例如,要求从名为“Persons”的表中选取居住的城市以“A”或“L”或“N”开头的人,可以使用下面的 SELECT 语句:SELECT * FROM Persons WHERE City LIKE '[ALN]%'。要求从名为“Persons”的表中选取居住的城市不以“A”或“L”或“N”开头的人,可以使用下面的 SELECT 语句:SELECT * FROM Persons WHERE City LIKE '[!ALN]%'。

发表于 2018-07-21 14:34:10 回复(0)
把倒数给忘了
发表于 2020-01-01 16:25:25 回复(0)
看错题,是倒数第三个字符为W。
发表于 2016-01-20 17:57:35 回复(0)
这里说的是四个字母,为什么大家都看成四个字符呢?
如果是四个字母怎么控制呢?
发表于 2015-11-16 17:50:25 回复(1)
B. %匹配0个或多个字符 _匹配任意一个字符
发表于 2023-04-03 06:24:22 回复(0)
要认真读题目啊,下意识忽略倒数。。。
发表于 2023-03-10 11:52:31 回复(0)
倒数第三个。

发表于 2022-04-04 09:59:16 回复(0)
看题要看清楚,我没看到倒数。
发表于 2021-11-13 21:00:33 回复(0)
看清楚是倒数第三个字母是W
发表于 2021-07-21 19:19:33 回复(0)
这里是倒数第三个,千万不要看成了第三个,
发表于 2015-09-14 17:08:43 回复(2)