Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

यदि पैरामीटर शून्य है तो SQL WHERE के भाग को अनदेखा करता है

कैसा कुछ ऐसा है

SELECT Id, col1, col2, col3, col4 
FROM    myTable 
WHERE   col1 LIKE @Param1+'%'
OR      @Param1 IS NULL

इस विशिष्ट मामले में आप भी इस्तेमाल कर सकते थे

SELECT Id, col1, col2, col3, col4 
FROM    myTable 
WHERE   col1 LIKE ISNULL(@Param1,'')+'%'

लेकिन सामान्य तौर पर आप कुछ इस तरह की कोशिश कर सकते हैं

SELECT Id, col1, col2, col3, col4 
FROM    myTable 
WHERE   (condition1 OR @Param1 IS NULL)
AND     (condition2 OR @Param2 IS NULL)
AND     (condition3 OR @Param3 IS NULL)
...
AND     (conditionN OR @ParamN IS NULL)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक संग्रहीत प्रक्रिया क्या है?

  2. SQL सर्वर में एक वृद्धिशील GUID बनाने के लिए NEWSEQUENTIALID() का उपयोग करें

  3. SQL सर्वर में एक डेटाबेस से दूसरे डेटाबेस में टेबल कॉपी करें

  4. .NET कोर दूरस्थ SQL सर्वर डेटाबेस से कनेक्ट नहीं हो सकता

  5. SQL सर्वर:फ़ंक्शन/प्रक्रिया हस्ताक्षरों को बदलते समय संदर्भों की जाँच करें