SQL デコード関数の使用方法
SQLにおけるDECODE関数は、与えられた複数の値のうち、一致したものに対して対応する結果を返すための関数です。DECODE関数の構文は次の通りです。
DECODE(expression, search_value1, result1, search_value2, result2, ..., default_result)
そのうち
- 式はマッチさせたいオブジェクト
- サーチバリュー 1、サーチバリュー 2 などは一致する値です。
- 「result1」「result2」などに対応する「search_value」と合致した場合の検索結果
- default_resultは値が一致しなかった時のデフォルトで返す結果
DECODE関数の使用ケースは次のとおりです。
- 値の一致の簡易化
SELECT DECODE(column, 'value1', 'result1', 'value2', 'result2', 'default_result') FROM table;
- 値の範囲に一致する:
SELECT DECODE(column, 'value1', 'result1', 'value2', 'result2', 'default_result') FROM table;
- 複数の条件に一致する
SELECT DECODE(column1, 'value1', 'result1', column2, 'result2', 'default_result') FROM table;
- 再帰的な DECODE 関数をネストする
SELECT DECODE(column, 'value1', 'result1', DECODE(column2, 'value2', 'result2', 'default_result')) FROM table;
各データベースにおけるDECODE関数の実装や構文の要件は異なることに注意してください。そのため、具体的な使い方は異なる可能性があります。