ISNULL() v klauzuli select má zanedbatelný vliv na výkon. Na druhou stranu v klauzuli where může mít velmi velký dopad na výkon, protože zabraňuje optimalizátoru použít index na tento sloupec.
where isnull(col1, 0) = 0 -- unable to use index, because every
-- row has to be evaluated
where col1 = isnull(@myVar, 0) -- index will be used, since isnull(@myVar, 0)
-- returns the same static value for every row and
-- not every row has to be evaluated by the function.
Takže při použití isnull() v klauzuli where vyhodnoťte, zda to brání optimalizátoru dotazů v použití indexu. Pokud ano, zvažte vytvoření vypočítaného sloupce s výsledkem if isnull(col1, 0) a indexujte vypočítaný sloupec a použijte jej ve své klauzuli where.