सरल, छोटा, तेज़: EXISTS
।
IF EXISTS (SELECT 1 FROM people p WHERE p.person_id = my_person_id) THEN
-- do something
END IF;
क्वेरी प्लानर मिली पहली पंक्ति पर रुक सकता है - count()
. के विपरीत , जो सभी (मिलान) पंक्तियों की परवाह किए बिना स्कैन करेगा। बड़ी टेबल से फर्क पड़ता है। एक अद्वितीय कॉलम पर एक शर्त के लिए अंतर छोटा है:केवल एक पंक्ति योग्य होती है और इसे जल्दी से देखने के लिए एक अनुक्रमणिका होती है।
आप बस एक खाली SELECT
का उपयोग कर सकते हैं सूची:
IF EXISTS (SELECT FROM people p WHERE p.person_id = my_person_id) THEN ...
SELECT
EXISTS
. के परिणाम पर सूची का कोई प्रभाव नहीं है . केवल कम से कम एक योग्यता पंक्ति का अस्तित्व मायने रखता है।