Sử dụng biến cục bộ tại bộ lọc WHERE gây ra QUÉT BẢNG ĐẦY ĐỦ. Vì SS không biết giá trị của các biến cục bộ tại thời điểm biên dịch. Vì vậy, nó tạo ra một kế hoạch thực thi cho quy mô lớn nhất có thể có sẵn cho cột.
Để ngăn chặn vấn đề hiệu suất, SS phải biết giá trị của các biến tại thời điểm biên dịch. Xác định SP và chuyển các biến thể cục bộ này làm tham số là một trong những giải pháp của vấn đề. Một giải pháp khác là sử dụng sp_executesql và chuyển lại các biến cục bộ đó dưới dạng tham số ...
Hoặc bạn có thể thêm TÙY CHỌN (RECOMPILE) ở cuối câu lệnh sql của bạn để làm cho các biến thể cục bộ của bạn được biên dịch. Điều này sẽ giải quyết vấn đề về người biểu diễn.