CASE
příkaz je nejblíže IF v SQL a je podporován ve všech verzích SQL Server.
SELECT CAST(
CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END AS bit) as Saleable, *
FROM Product
Stačí použít CAST
operátor, pokud chcete výsledek jako booleovskou hodnotu. Pokud jste spokojeni s int
, funguje to:
SELECT CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END as Saleable, *
FROM Product
CASE
příkazy lze vložit do jiných CASE
výpisy a dokonce i zahrnuty v souhrnech.
SQL Server Denali (SQL Server 2012) přidává příkaz IIF, který je také dostupný v přístupu (upozornil Martin Smith):
SELECT IIF(Obsolete = 'N' or InStock = 'Y', 1, 0) as Saleable, * FROM Product