トップページに戻る
次のSQLパズルへ
前のSQLパズルへ
2-2-2 case式とLike演算子
SQLパズル
任意の文字列に、
aaaaという文字列が含まれていたら1、含まれてなかったら0
を取得する
SQL
#■■■Like演算子を使う方法■■■
select Val,case when Val Like '%aaaa%' then 1 else 0 end as IsMatch
from (select 'aaa' as Val
union select 'aaaa'
union select 'aaaaa'
union select 'aaaac'
union select 'bb'
union select 'caaaa') dummy
order by Val;
#■■■正規表現を使う方法■■■
select Val,case when Val RegExp "a{4}" then 1 else 0 end as IsMatch
from (select 'aaa' as Val
union select 'aaaa'
union select 'aaaaa'
union select 'aaaac'
union select 'bb'
union select 'caaaa') dummy
order by Val;
解説
case式とLike演算子もしくは、正規表現を組み合わせると
文字列がパターンにマッチする、しないでの分岐が可能です