मुझे लगता है कि आप अपने WHERE
. पर कुछ गतिशील व्यवहार चाहते हैं क्लॉज, बिना गतिशील रूप से बिल्ड आपका WHERE
खंड।
एक ही पैरामीटर के साथ, आप ISNULL
. का उपयोग कर सकते हैं (या COALESCE
) इस तरह:
SELECT * FROM Table WHERE ID = ISNULL(@id, ID)
जो एक NULL
. की अनुमति देता है सभी से मेल खाने के लिए पैरामीटर। कुछ लंबे लेकिन अधिक स्पष्ट पसंद करते हैं:
SELECT * FROM Table WHERE (@id IS NULL) OR (ID = @id)