Thay đổi điều kiện của bạn thành điều này thay thế:
where (@LastName = 'All' and 1=1) or (LastName = @LastName)
Ý tưởng là khi @LastName
='Tất cả' thì truy vấn của bạn sẽ không có bất kỳ bộ lọc nào. Điều kiện 1 =1 sẽ luôn đúng và cùng với việc kiểm tra khác sẽ trả về tất cả các kết quả. Đường dẫn khác mà truy vấn có thể thực hiện là lọc theo Họ cụ thể, chắc chắn sẽ loại trừ các giá trị rỗng.
Cập nhật:Điều kiện 1 =1 là dư thừa. Bạn có thể viết lại điều kiện thành:
where (@LastName = 'All') or (LastName = @LastName)