Pomocí místních proměnných na WHERE filtr způsobí FULL TABLE SCAN. Protože SS nezná hodnoty lokálních proměnných v době kompilace. Vytvoří tedy plán provádění pro největší měřítko, které může být pro sloupec k dispozici.
Aby se předešlo problému s výkonem, musí SS znát hodnoty proměnných v době kompilace. Definování SP a předání těchto místních proměnných jako parametr je jedním z řešení problému. Dalším řešením je použití sp_executesql a znovu předání těchto lokálních proměnných jako parametru...
Nebo můžete přidat OPTION ( ZNOVU KOMPILOVAT ) na konci vašeho příkazu sql, aby byly vaše místní proměnné zkompilovány. To vyřeší problém performans.