株式会社プロネット

 

WEBシステム開発、ITコンサルティング、自社サービス、教育事業 - これからのビジネスへのIT活用ソリューションをご提案致します。

UPDATEで条件別の値をセットする

2017.8.17(Thu) 19:11 | MySQL | sofuku

MySQLで追加したカラムに値を設定するときなどに、CASE文を使うことで条件によってセットする値を変えることができます。

環境

MySQL:5.6

 

例としてnumberというカラムにセットする値を、typeカラムに設定されている値が

Aの時は1、Bの時は2、Cの時は3、それ以外の場合NULL

を設定する場合は下記のように記載します。

UPDATE table_name
  SET number = 
    (
      CASE WHEN type = 'A' THEN 1
           WHEN type = 'B' THEN 2
           WHEN type = 'C' THEN 3
           ELSE NULL END
    )
;
    

これで、1つのクエリを発行するだけでカラムにSETする値を条件によって変えることができます。