条件付けられた値を指定します。
CASE式::={探索CASE式|単純CASE式|CASE略式} |
表2-101 CASE式の結果の文字集合
CASE式 | 結果の文字集合 | |
---|---|---|
探索CASE式 | 先頭のTHENに指定した値式の文字集合 | |
単純CASE式 | 先頭のTHENに指定した値式の文字集合 | |
CASE略式 | NULLIF | 最初の値式の文字集合 |
COALESCE | 最初の値式の文字集合 |
表T1のうち,C1列が'AA'のものを'AAA',C1列が'BB'のものを'BBB'に更新します。
UPDATE T1 SET C1 =
CASE WHEN C1='AA' THEN 'AAA' WHEN C1='BB' THEN 'BBB' ELSE C1 END
表T1のうち,C1列が'AA'のものを'AAA',C1列が'BB'のものを'BBB'に更新します。
UPDATE T1 SET C1 =
CASE C1 WHEN 'AA' THEN 'AAA' WHEN 'BB' THEN 'BBB' ELSE C1 END
表T1の列C1,C2,C3の順で,ナル値でない列を抽出します。すべてがナル値の場合,結果として0が設定されます。
SELECT COALESCE(C1,C2,C3,0)FROM T1
表T1の列C1,C2の値等しい場合,結果としてナル値を返します。列C1,C2の値が等しくない場合,列C1を抽出します。
SELECT NULLIF(C1,C2) FROM T1