Może to załatwia sprawę:
SELECT *
FROM table
WHERE col1 = param1
AND (param2 is null or col2 = param2);
Nie jest to usunięcie warunku AND, ale powinno sprawić, że nieistotne w przypadku, gdy param2 ma wartość null. Więc nie odpowiadam jasno na twoje pytanie, ale idziesz dookoła...;)