「Oracle」DECODE関数で条件分岐するサンプル
環境
Oracle Database 12c Standard Edition Release 12.2.0.1.0 – 64bit Production
構文
SELECT
DECODE(列名, 値1, 結果1, 値2, 結果2, 結果3)
FROM テーブル名;
DECODE関数を使って指定した列の値によって異なる結果を返します
使用例1
指定した列の値が「値1」の場合、「結果1」を返します。
SQL構文
select decode('90', '90', '素晴らしい', '60', '合格', '不合格') from dual
実行結果
素晴らしい
使用例2
指定した列の値が「値2」の場合、「結果2」を返します。
SQL構文
select decode('60', '90', '素晴らしい', '60', '合格', '不合格') from dual
結果
合格
使用例3
それ以外の場合、「結果3」を返します
SQL構文
select decode('55', '90', '素晴らしい', '60', '合格', '不合格') from dual
結果
不合格