COALESCE スカラー関数
COALESCE 関数は、式のリストでヌル値ではない最初の式を返します。
スキーマは SYSIBM です。
- expression1
- 組み込みデータ・タイプまたはユーザー定義データ・タイプの値を返す式。
- expression2
- expression1 のデータ・タイプと互換性のある組み込みデータ・タイプまたはユーザー定義データ・タイプの値を返す式。データ・タイプ間の互換性については、結果データ・タイプの規則で説明しています。
引数は指定された順序で評価され、 関数の結果は NULL 値以外の最初の引数になります。 すべての引数がヌルである場合、結果はヌルです。
注
- COALESCE 関数は、ユーザー定義関数の作成時にソース関数として使用することはできません。この関数は、 すべての互換データ・タイプを引数として受け入れるので、ユーザー定義データ・タイプをサポートするための追加のシグニチャーを作成する必要はありません。
例
- 例 1: DEPARTMENT 表のすべての行のすべての値を選択する場合に、
部門の管理者 (MGRNO) が欠落しているときには (つまり NULL 値なら)、
'ABSENT' という値を戻すようにします。
SELECT DEPTNO, DEPTNAME, COALESCE(MGRNO, 'ABSENT'), ADMRDEPT FROM DEPARTMENT - 例 2: EMPLOYEE 表のすべての行から従業員番号 (EMPNO) と給与 (SALARY) を選択する場合に、
給与が欠落していれば (つまり NULL 値なら)、値としてゼロを戻すようにします。
SELECT EMPNO, COALESCE(SALARY, 0) FROM EMPLOYEE - 例 3: 以下の COALESCE ステートメントでは、c1 の値に応じて次のようになります。
- 5 の場合、ステートメントは値 5 を戻します。
- NULL の場合、ステートメントは値 10 を戻します。
- 'AB' の場合、ステートメントはエラーを戻します。2 つの式のデータ・タイプに互換性がないからです。
COALESCE(c1,10)
