Mungkin ini triknya:
SELECT *
FROM table
WHERE col1 = param1
AND (param2 is null or col2 = param2);
Ini tidak menghapus kondisi AND, tetapi harus membuat yang tidak penting jika param2 adalah nol. Jadi tidak menjawab pertanyaan Anda dengan jelas tetapi berkeliling...;)