यह जांचने के लिए कि एक पंक्ति MySQL तालिका में मौजूद है या नहीं, मौजूद स्थिति का उपयोग करें। मौजूदा स्थिति का उपयोग सबक्वेरी के साथ किया जा सकता है। तालिका में पंक्ति मौजूद होने पर यह सही हो जाता है, अन्यथा झूठा वापस आ जाता है। सत्य को 1 के रूप में और असत्य को 0 के रूप में दर्शाया जाता है।
बेहतर ढंग से समझने के लिए, सबसे पहले हम CREATE कमांड की मदद से एक टेबल बनाएंगे। टेबल बनाने के लिए निम्नलिखित क्वेरी है -
mysql> टेबल बनाएं ExistRowDemo-> (-> ExistId int,-> Name varchar(100)-> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.53 सेकंड)
टेबल को सफलतापूर्वक बनाने के बाद, हम INSERTcommand की मदद से कुछ रिकॉर्ड डालेंगे। तालिका में रिकॉर्ड डालने की क्वेरी -
mysql> INSERT ExistsRowDemo मानों में (100, 'जॉन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> ExistsRowDemo मानों में सम्मिलित करें (101, 'बॉब'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) )mysql> ExistsRowDemo मानों में सम्मिलित करें (103, 'कैरोल'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड) mysql> ExistsRowDemo मानों में सम्मिलित करें (104, 'डेविड'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड)पूर्व>सभी रिकॉर्ड डालने के बाद, हम उन्हें सेलेक्ट कमांड की मदद से प्रदर्शित कर सकते हैं, जो इस प्रकार है -
mysql> ExistsRowDemo से * चुनें;निम्न आउटपुट है -
+------+----------+| ExistId | नाम |+---------+----------+| 100 | जॉन || 101 | बॉब || 103 | कैरल || 104 | डेविड |+------------+----------+4 पंक्तियाँ सेट में (0.00 सेकंड)हमने तालिका में कुछ रिकॉर्ड जोड़े। EXISTS कंडीशन की मदद से यह जांचने के लिए कि कोई पंक्ति तालिका में मौजूद है या नहीं, सिंटैक्स इस प्रकार है -
<पूर्व>मौजूद चुनें (चुनें * अपने टेबलनाम से जहां आपकी स्थिति है);
मैं परिणाम प्राप्त करने के लिए उपरोक्त क्वेरी को लागू कर रहा हूं -
नोट:सबसे पहले, मैं उस स्थिति पर विचार कर रहा हूं जब तालिका में पंक्ति मौजूद है। उसके बाद, जब कोई पंक्ति मौजूद नहीं होगी तो स्थिति का उल्लेख किया जाएगा।
केस 1
इस मामले में, मैं एक शर्त दे रहा हूं जब पंक्ति मौजूद है। आइए उपरोक्त सिंटैक्स को यह जांचने के लिए लागू करें कि पंक्ति मौजूद है या नहीं।
mysql> EXISTS चुनें (ExistsRowDemo WHERE ExistId=104 से चुनें *);
निम्न आउटपुट है -
<पूर्व>+------------------------------------------ --------+| EXISTS(चुनें * ExistsRowDemo से जहां ExistId=104)|+------------------------------------- -----------------+| 1 |+-------------------------------------------------------- --------+1 पंक्ति सेट में (0.00 सेकंड)उपरोक्त नमूना आउटपुट से, यह स्पष्ट है कि पंक्ति मौजूद है, क्योंकि हमें जो मान मिला है वह 1 है। इसका अर्थ है TRUE!
केस 2
इस मामले में, मैं उस स्थिति की व्याख्या कर रहा हूं जब पंक्ति मौजूद नहीं है। उपरोक्त क्वेरी को लागू करना।
mysql> EXISTS चुनें (ExistsRowDemo WHERE ExistId=105 से चुनें *);
निम्न आउटपुट है -
<पूर्व>+------------------------------------------ --------+| EXISTS(चुनें * ExistsRowDemo से जहां ExistId=105)|+------------------------------------- -----------------+| 0 |+-------------------------------------------------------- --------+1 पंक्ति सेट में (0.00 सेकंड)उपरोक्त आउटपुट से, हम देख सकते हैं कि आउटपुट 0 है यानी झूठा (पंक्ति मौजूद नहीं है)।