COALESCE
を使用できます
またはISNULL
。前者は標準であり、最初のNOT NULL
を返します 引数(またはNULL
すべての引数がNULL
の場合 )
SELECT COALESCE(micv.value,'Pending') as value
ISNULL
引数は2つに制限されていますが、テストする最初の値の評価にコストがかかる場合(サブクエリなど)、SQLServerではより効率的です。
ISNULL
の潜在的な「落とし穴」の1つ 注意すべき点は、最初のパラメーターのデータ型を返すため、置換される文字列が列のデータ型よりも長い場合は、キャストが必要になることです。
例:
CREATE TABLE T(C VARCHAR(3) NULL);
INSERT T VALUES (NULL);
SELECT ISNULL(C,'Unknown')
FROM T
Unk
を返します
ただし、ISNULL(CAST(C as VARCHAR(7)),'Unknown')
またはCOALESCE
どちらも希望どおりに機能します。