【SQL】 CASE演算子の使い方(値を変換する)
CASE演算子は ORACLE MS-SQL Server で使用できます。
CASE演算子 : 書式
書式1
CASE 式 WHEN 式 THEN 式 [WHEN 式 THEN 式 ...]
[ELSE 式] END
CASE 式 WHEN 式 THEN 式 [WHEN 式 THEN 式 ...]
[ELSE 式] END
書式2
CASE WHEN 式 THEN 式 [WHEN 式 THEN 式 ...]
[ELSE 式] END
CASE WHEN 式 THEN 式 [WHEN 式 THEN 式 ...]
[ELSE 式] END
CASE演算子 : 解説
CASE演算子は、値を変換する演算子です。CASEで指定した式に、WHENで指定した値がある場合には、その後のTHENで指定した値に変換します。WHEN THENの組合せは複数記述することができます。ELSEは、WHENで指定した値がない場合に変換する値を指定するものです。最後に終了を示すENDを記述する必要があります。
またCASEの後ろの式を指定しない場合には、WHENとTHENで指定した式で直接変換を行うことができます。
CASE演算子 : 使用例
SQL文
SELECT 優先順位,
CASE 優先順位
WHEN 1 THEN 'first'
WHEN 2 THEN 'second'
WHEN 3 THEN 'third'
ELSE 'other'
END
FROM 仕事;
実行結果
優先順位 | |
---|---|
1 | first |
2 | second |
3 | third |
4 | other |
この例では、「仕事」表の「優先順位」列で、
「1」なら「first」
「2」なら「second」
「3」なら「third」に変換し、
それ以外なら「other」に変換する記述をしています。
CASE演算子 : 関連項目(DECODE関数)
【SQL・ORACLE】 DECODE関数の使い方(値を変換する)
DECODE関数は、オラクルで値を変換する関数です。DECODE関数の特徴として、条件に比較演算子や式を使うことが出来ません。このページでは、具体的な使用例を使い解説しています。いちれべ.comは、オラクル、MS-SQL、MS-Access で使用可能か一目でわかるサイトです。
関連リンク
一覧ページ
SQLリファレンス > 演算子
演算子によって列に対する様々な演算が行えます。このページは、使用できる演算子の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。
SQLリファレンス > 関数
ORACLE、MS-SQL Server、MS-Access、MySQLで使用する関数の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。