Access IIf の代用
IIf(fieldABC='A','Aです','Aではありません')
--この IIf を CASE に置き換える
CASE fieldABC WHEN 'A' THEN 'Aです' ELSE 'Aではありません' END
--または
CASE WHEN fieldABC = 'A' THEN 'Aです' ELSE 'Aではありません' END
--NULL 判定は
CASE WHEN fieldABC IS NULL THEN 'NULLです' ELSE 'NULLではありません' END
--CASE式とは関係ありませんが ISNULL という便利な関数もあります
ISNULL(fieldABC, 'NULLです')
単純 CASE 式
SELECT
CASE fieldABC
WHEN 'A' THEN 'Aです'
WHEN 'AB' THEN 'ABです'
ELSE '見つかりませんでした' -- 省略可能,省略時は NULL が返る
END
検索 CASE 式
SELECT
CASE
WHEN fieldN < 100 THEN '100未満'
WHEN fieldN >= 100 AND fieldN < 1000 THEN '100以上1000未満'
ELSE '1000以上' -- 省略可能,省略時は NULL が返る
END
■環境
OS:Microsoft Windows XP Home Edition 日本語 ServicePack 3
DB:Microsoft SQL Server 2005 Express Edition Service Pack 2 (9.00.3080.00)
DB管理ツール:Microsoft SQL Server Management Studio Express (9.00.3042.00)
■関連投稿
SQL Server での切り捨て
SQL Server での四捨五入