【问题标题】:SQL QUERY to get city name begining with a vowel NO OUTPUT o [duplicate]SQL QUERY 获取以元音开头的城市名称 NO OUTPUT 或 [重复]
【发布时间】:2018-01-07 19:08:45
【问题描述】:

从车站选择城市,其中城市喜欢 '[aeiou]%';

这应该返回所有以元音开头的城市名称,但它没有。请说明该地区并建议其他方法

【问题讨论】:

  • 这不是正则表达式。提到字符类是没有用的。相反,它会首先尝试寻找[ 字符。
  • 试试这个:SELECT DISTINCT city FROM station WHERE city RLIKE '^[aeiouAEIOU].*[aeiouAEIOU]$'

标签: mysql sql regex sql-like


【解决方案1】:

因为每个车站都应该有一个城市

select city from station where LOWER(SUBSTR(city,1,1)) IN ('a','e','i','o','u')

应该也不错。

【讨论】:

    【解决方案2】:

    你可以试试:

    select city from station where city RLIKE '^[aeiouAEIOU]'
    

    我认为您的表达式可能会失败,因为您没有使用 '^' 指定字符串的开头。

    【讨论】:

      【解决方案3】:

      在您的查询中使用这个regex(这里是一个fiddle):

      SELECT * FROM station WHERE city RLIKE '^[aeiouAEIOU]'
      

      如果没有在正则表达式末尾指定$,我们基本上是在说返回城市starts 带有元音的每一行。

      $ 符号表示我们要匹配的字符串的结尾。如果您没有其他要求,请忽略它。

      您也不需要%

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-12-27
        • 1970-01-01
        • 2013-01-21
        • 2011-10-11
        • 2013-03-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多