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

IF EXIST (से 1 चुनें) को IF EXIST में बदल रहा है (शीर्ष 1 से चुनें) का कोई दुष्प्रभाव है?

नहीं, कोई अंतर नहीं होना चाहिए। EXISTS जैसे ही उसे एक मेल खाने वाली पंक्ति मिलती है, वह बेल आउट हो जाता है। इसलिए इसे हमेशा पसंद किया जाता है उदा। (select COUNT(*) from ...) > 0 - एक COUNT सभी पंक्तियों पर विचार करने के लिए बाध्य करेगा।

यदि आप निम्नलिखित चार प्रश्न बनाते हैं:

select * from sys.objects
select top 1 * from sys.objects
select 1 where exists(select * from sys.objects)
select 1 where exists(select top 1 * from sys.objects)

और निष्पादन योजनाओं को चालू करें, आप देखेंगे कि दूसरी क्वेरी एक निष्पादन योजना उत्पन्न करती है जिसमें एक TOP शामिल है ऑपरेटर। तीसरी और चौथी क्वेरी समान . उत्पन्न करती हैं योजनाएँ। TOP अनदेखा किया जाता है।



  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. उन परिवर्तनों को सहेजने से रोकें जिनके लिए तालिका को फिर से बनाने की आवश्यकता होती है नकारात्मक प्रभाव

  3. SQL सर्वर पदानुक्रम के बारे में प्रश्न गहराई-प्रथम प्रदर्शन

  4. क्या हम बिना किसी अन्य कथन के केस स्टेटमेंट लिख सकते हैं

  5. क्वेरी को कैसे जांचें इंडेक्स का उपयोग कर रहा है