Jeden z najłatwiejszych sposobów na osiągnięcie tego:
SELECT * FROM table
WHERE ((@status_id is null) or (status_id = @status_id))
and ((@date is null) or ([date] = @date))
and ((@other_parameter is null) or (other_parameter = @other_parameter))
itp. To całkowicie eliminuje dynamiczny sql i umożliwia wyszukiwanie w jednym lub kilku polach. Eliminując dynamiczny sql, usuwasz kolejny problem dotyczący bezpieczeństwa związany z wstrzykiwaniem sql.