EXISTS (nebo NOT EXISTS ) je speciálně navržen pro kontrolu, zda něco existuje, a proto by měl být (a je) tou nejlepší volbou. Zastaví se na prvním řádku, který odpovídá, takže nevyžaduje TOP klauzule a ve skutečnosti nevybírá žádná data, takže neexistuje žádná režie ve velikosti sloupců. Můžete bezpečně použít SELECT * zde - nic jiného než SELECT 1 , SELECT NULL nebo SELECT AnyColumn ... (můžete dokonce použít neplatný výraz jako SELECT 1/0 a nerozbije se).
IF EXISTS (SELECT * FROM Products WHERE id = ?)
BEGIN
--do what you need if exists
END
ELSE
BEGIN
--do what needs to be done if not
END