MySQLで正規表現で検索条件を抽出する
MySQLでWhere句にREGEXPを使用することで正規表現でデータ抽出をすることができます。
WHERE カラム名 REGEXP '正規表現パターン'
従業員テーブル(employee)のfirst_nameが小文字のアルファベットで始まるデータを抽出してみます。
select first_name from employee where first_name REGEXP '^[a-z]';
結果は以下の通りです。
taro jiro Hanako ichiro saburo
小文字のアルファベットで始まる、というパターンなのにHanakoが抽出されてしまっています。
正規表現パターンで大文字小文字は指定できないようで、REGEXP BINARYで抽出すると正しく抽出することができます。
select first_name from employee where first_name REGEXP BINARY '^[a-z]';
結果は以下の通りです。
taro jiro ichiro saburo
逆に大文字のアルファベットで始まるデータを抽出するにはREGEXP BINARYで^[A-Z]で抽出します。
select first_name from employee where first_name REGEXP BINARY'^[A-Z]';
その他は普通に正規表現が使えると思います。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント