这是来自的挑战问题黑客排名.
我的第一个查询工作正常:
select distinct city
from station
where city not regexp '^[aeiou]'
and city not regexp '[aeiou]$'
但我的第二个查询给出了错误的答案
select distinct city
from station
where city not regexp '^[aeiouAEIOU].*[aeiouAEIOU]$'
它正在编译但给出错误的结果
https://dev.mysql.com/doc/refman/8.0/en/regexp.html
'NOT REGEXP' 是 REGEXP 的否定,
'REGEXP' -> 检查 'REGEXP' 如果满足则返回 1 否则 0
select 'Chelsea' REGEXP '^[aeiou].*[aeiou]$' ;
0
'NOT REGEXP' -> 检查'REGEXP',然后返回结果的相反值。
select 'Chelsea' not REGEXP '^[aeiou].*[aeiou]$' ;
1
在这种情况下,“Chelsea”不以元音开头,因此REGEXP
是 0 并且not REGEXP
is 1.
因此,您正在计算城市,甚至名称以元音开头或结尾。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)