NULL でない最初の式の値を返す汎用 SQL 関数です。
Synopsis
COALESCE(expression,expression)
引数
expression 評価される式。複数の式はコンマで区切ったリストで指定します。式リストでは、140 個までの式を指定できます。すべての式が同じ型である必要があります。
概要
COALESCE 関数は、式リストを左から右に検索し、NULL 値でない式が初めて見つかると、その値を返します。すべての式が NULL と評価されると、NULL が返されます。
DISPLAY モードまたは ODBC モードで返されるデータ型は、最初の expression のデータ型によって決まります。
文字列は、先頭と末尾の空白が維持され、そのまま返されます。数値は、先頭と末尾のゼロが削除され、キャノニック形式で返されます。
NULL の扱いの詳細は、"SQL の概念" のページで "NULL" を参照してください。
以下の埋め込み SQL の例は、一連のホスト変数値を取り、NULL 以外の値を持つ最初の値 (d) を返します。Caché ObjectScript の空文字列 ("") が、Caché SQL では NULL として扱われる点に注意してください。
  SET (a,b,c,e)=""
  SET d="firstdata"
  SET f="nextdata"
  &sql(SELECT COALESCE(:a,:b,:c,:d,:e,:f)
    INTO :x
   FROM Sample.Person)
   IF SQLCODE'=0 {
     WRITE !,"Error code ",SQLCODE }
   ELSE {
     WRITE !,"The first non-null value is: ",x }
以下の例では、COALESCE を使用して、FavoriteColors フィールドに NULL 値を持つレコードを特定します。その結果、列を 1 つ返します。FavoriteColors が NULL でない場合は、その好みの色を返します。FavoriteColors が NULL の場合は、好みの色を持たない人の名前を返します。
SELECT COALESCE(FavoriteColors,Name) AS WhoNullColors 
FROM Sample.Person
関連項目
IFNULL ISNULL