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

如何在SQL Server中判断某列是否包含两个相同的元音字母?

在SQL Server中判断列是否包含重复元音字母的方法

方法1:使用LIKE匹配(适配你的代码框架)

直接针对每个元音字母,检查字符串中是否至少出现两次,结合OR条件实现:

select
    *
from
    hr.locations
where
    state_province is null
    and
    (
        city like '%a%a%'
        or city like '%e%e%'
        or city like '%i%i%'
        or city like '%o%o%'
        or city like '%u%u%'
        -- 若需区分大小写,添加COLLATE子句,示例:
        -- city COLLATE SQL_Latin1_General_CP1_CS_AS like '%a%a%'
    )

说明:

  • %是SQL的通配符,匹配任意长度的字符(包括空字符),%a%a%表示字符串中存在两个被任意字符分隔(或紧邻)的a
  • 默认排序规则不区分大小写,若需严格区分,通过COLLATE指定区分大小写的规则(如SQL_Latin1_General_CP1_CS_AS)

方法2:使用字符串拆分+统计(更灵活)

通过拆分字符串为单个字符,统计每个元音的出现次数,判断是否存在重复元音:

select
    *
from
    hr.locations
where
    state_province is null
    and exists (
        select 1
        from string_split(lower(city), '') as split_chars
        where value in ('a','e','i','o','u')
        group by value
        having count(*) >= 2
    )

说明:

  • lower(city)统一转为小写,避免大小写差异导致统计遗漏
  • string_split将字符串拆分为单个字符的行
  • 筛选出元音字符后分组统计,只要有一个元音出现2次及以上,exists条件就成立

内容的提问来源于stack exchange,提问作者Esteban Ospina

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 12:50:21