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

SQL सर्वर में ISNULL () का उपयोग करते समय क्या कोई प्रदर्शन समस्या है?

ISNULL() सेलेक्ट-क्लॉज में प्रदर्शन पर नगण्य प्रभाव पड़ता है। दूसरी ओर जहां-क्लॉज में यह प्रदर्शन पर बहुत बड़ा प्रभाव डाल सकता है, क्योंकि यह ऑप्टिमाइज़र को उस कॉलम पर एक इंडेक्स का उपयोग करने से रोकता है।

where isnull(col1, 0) = 0 -- unable to use index, because every 
                          -- row has to be evaluated

where col1 = isnull(@myVar, 0) -- index will be used, since isnull(@myVar, 0) 
                               -- returns the same static value for every row and 
                               -- not every row has to be evaluated by the function.

इसलिए, जहां-क्लॉज में isnull() का उपयोग करते समय, मूल्यांकन करें कि क्या यह क्वेरी ऑप्टिमाइज़र को इंडेक्स का उपयोग करने से रोकता है। यदि ऐसा है, तो परिणाम के साथ एक गणना कॉलम बनाने पर विचार करें यदि isnull(col1, 0) और गणना किए गए कॉलम को अनुक्रमित करें और इसे अपने जहां-क्लॉज में उपयोग करें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ExecuteNonQuery वापसी -1 क्वेरी स्ट्रिंग के बावजूद sql COUNT का उपयोग करते समय

  2. MS SQL सर्वर में भूले हुए लेनदेन का स्वचालित विलोपन

  3. कैसे जांचें कि SQL डेटाबेस दूषित है या नहीं - MDF फ़ाइल को सुधारने का समाधान

  4. सबसे कठिन प्रश्नों पर सहायता के लिए सर्वश्रेष्ठ SQL सर्वर प्रदर्शन फ़ोरम

  5. SQL सर्वर डेटाबेस प्रतिकृति