开发者社区 问答 正文

如何在有分隔符“;”的字符串中搜索整个单词?

如何在有分隔符“;”的字符串中搜索整个单词?

展开
收起
贺贺_ 2019-12-05 23:02:18 578 分享 版权
1 条回答
写回答
取消 提交回答
  • 要搜索 CSV 列表中的字段,一种方法是:

    where ';' + mycol + ';' like '%;mri;%'
    
    

    在 DB Fiddle 上演示:

    with 
        csv as (select 'Blood work;MRI;ICC' v),
        match as (select 'mri' m union all select 'Blood work' union all select 'Blood')
    select csv.v, match.m,
        case when ';' + csv.v + ';' like '%;' + match.m + ';%' 
            then 'match' 
            else 'no match' 
        end matched
    from csv
    cross join match 
    v                  | m          | matched 
    :----------------- | :--------- | :-------
    Blood work;MRI;ICC | mri        | match   
    Blood work;MRI;ICC | Blood work | match   
    Blood work;MRI;ICC | Blood      | no match
    
    2019-12-05 23:02:46
    赞同 展开评论
问答地址: