CASE sætningen er tættest på IF i SQL og understøttes på alle versioner af SQL Server.
SELECT CAST(
CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END AS bit) as Saleable, *
FROM Product
Du behøver kun at bruge CAST operator, hvis du vil have resultatet som en boolsk værdi. Hvis du er tilfreds med en int , dette virker:
SELECT CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END as Saleable, *
FROM Product
CASE sætninger kan indlejres i andre CASE udsagn og endda inkluderet i aggregater.
SQL Server Denali (SQL Server 2012) tilføjer IIF-sætningen, som også er tilgængelig i adgang (påpeget af Martin Smith):
SELECT IIF(Obsolete = 'N' or InStock = 'Y', 1, 0) as Saleable, * FROM Product