You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从STATION表查询非元音开头城市名时遇SQL0104N错误求助

解决SQL查询报错问题

错误原因

你使用的RLIKE是MySQL专属的正则匹配语法,而HackerRank该场景下的数据库为DB2,DB2不支持RLIKE,同时语法结构不符合DB2解析规则,导致出现SQL0104N语法错误。

正确SQL写法

方式一:使用DB2支持的正则函数

SELECT DISTINCT CITY
FROM STATION
WHERE NOT REGEXP_LIKE(CITY, '^[AEIOUaeiou].*')
  • REGEXP_LIKE是DB2标准的正则匹配函数,^[AEIOUaeiou].*匹配以任意大小写元音开头的字符串,NOT取反后得到目标结果。

方式二:使用LIKE语法兼容所有数据库

SELECT DISTINCT CITY
FROM STATION
WHERE CITY NOT LIKE 'A%'
  AND CITY NOT LIKE 'E%'
  AND CITY NOT LIKE 'I%'
  AND CITY NOT LIKE 'O%'
  AND CITY NOT LIKE 'U%'
  AND CITY NOT LIKE 'a%'
  AND CITY NOT LIKE 'e%'
  AND CITY NOT LIKE 'i%'
  AND CITY NOT LIKE 'o%'
  AND CITY NOT LIKE 'u%'
  • 通过逐个排除以大小写元音开头的城市名称,兼容性更强,无需依赖数据库的正则支持。

内容的提问来源于stack exchange,提问作者Teja Reddy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 11:34:54