नहीं, कोई अंतर नहीं होना चाहिए। 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
अनदेखा किया जाता है।