शायद यही चाल चल रही है:
SELECT *
FROM table
WHERE col1 = param1
AND (param2 is null or col2 = param2);
यह AND शर्त को हटा नहीं रहा है, लेकिन param2 के अशक्त होने की स्थिति में महत्वहीन बना देना चाहिए। तो स्पष्ट रूप से आपके प्रश्न का उत्तर नहीं दे रहा बल्कि घूम रहा हूं...;)