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

कैसे शॉर्ट-सर्किट एसक्यूएल जहां क्लॉज

SQL सर्वर शॉर्ट-सर्किटिंग नहीं करता है (न ही इसे करना चाहिए)।

अगर आपको इसकी ज़रूरत है तो कोशिश न करें कुछ परिस्थितियों में, आपको इसे अपनी क्वेरी लिखने के तरीके के लिए बाध्य करने की आवश्यकता है।

इस क्वेरी के लिए सबसे आसान समाधान एक CASE . का उपयोग करना होगा आपके WHERE . में एक्सप्रेशन खंड।

declare @queryWord as nvarchar(20) = 'asdas'

SELECT  * FROM TABLE_1 
WHERE TABLE_1.INIT_DATE = (CASE WHEN ISDATE(@queryWord) = 1 
                                THEN CONVERT(Date, @queryWord)
                           ELSE NULL  END)

ऑफ-हैंड, CASE और क्वेरी-नेस्टिंग केवल दो समर्थित तरीके हैं जिनके बारे में मैं SQL में निर्भर स्थितियों के लिए मूल्यांकन के आदेश को बाध्य करने के बारे में सोच सकता हूं।



  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 सर्वर - WHERE क्लॉज में CASE का उपयोग करना

  3. SQL सर्वर, ML.NET और C# के साथ मशीन लर्निंग मॉडल बनाना

  4. SQL सर्वर में टेबल नाम dbo से क्यों शुरू होते हैं?

  5. एक्सएमएल नाम आउटपुट कॉलम के लिए एसक्यूएल यूनियन