db2のDECODE関数の使い方は何ですか?
DB2の中で、DECODE関数は式と可能な値のシリーズを比較し、一致する値の結果を返します。 DECODE関数の構文は以下の通りです:
DECODE(expression, search_value1, result1, search_value2, result2, ..., default_result)
上記では、expressionは比較する式、search_value1、search_value2などは可能な値、result1、result2などはそれぞれの値に対応する結果、default_resultはマッチする値がない場合に返されるデフォルト結果です。expressionがsearch_value1に一致する場合はresult1を返し、search_value2に一致する場合はresult2を返し、そのような繰り返しです。マッチする値がない場合はdefault_resultを返します。
例えば、employeesというテーブルが存在し、employee_idとdepartment_idのフィールドが含まれている場合、DECODE関数を使用して各従業員の所属部署名を返すことができます。
SELECT employee_id, DECODE(department_id, 1, 'Sales', 2, 'Marketing', 3, 'Finance', 'Other') AS department_name
FROM employees;
department_id フィールドの値に基づいて、該当する部署名が返却されます。department_id に一致する値がない場合は、”Other” が返却されます。