जहां क्लॉज की मदद से इसे हासिल करें।
वाक्य रचना इस प्रकार है
अपना कॉलमनाम1,अपना कॉलमनाम2,...एन अपनेटेबलनाम से चुनें(अपनेटेबलनाम से COUNT(*) चुनें)=2;
अवधारणा को समझने के लिए, आइए एक तालिका बनाएं। तालिका बनाने की क्वेरी इस प्रकार है
mysql> टेबल बनाएं CountWithSubqueryDemo -> ( -> आईडी नॉट न्यूल AUTO_INCREMENT PRIMARY KEY, -> EmployeeName varchar(20) -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (2.09 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें।
क्वेरी इस प्रकार है
mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('जॉन') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.54 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान (NULL) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.36 सेकंड) )mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('कैरोल') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.23 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.31 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('बॉब') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (1.24 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान (NULL) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.30 सेकंड) mysql> काउंटविथसबक्वायरीडेमो (कर्मचारी नाम) मान ('सैम') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> काउंटविथसबक्वेरी डेमो (कर्मचारी नाम) मान ('माइक') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('जेम्स') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.26 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें।
क्वेरी इस प्रकार है
mysql> CountWithSubqueryDemo से *चुनें;
निम्न आउटपुट है
<पूर्व>+----+--------------+| आईडी | कर्मचारी का नाम |+----+--------------+| 1 | जॉन || 2 | शून्य || 3 | कैरल || 4 | || 5 | बॉब || 6 | शून्य || 7 | सैम || 8 | माइक || 9 | James |+----+--------------+9 पंक्तियों में सेट (0.19 सेकंड)निम्नलिखित है कि आप वास्तविक पंक्ति गणना का उपयोग किस प्रकार कर सकते हैं जहां खंड
mysql> CountWithSubqueryDemo से Id, EmployeeName चुनें -> कहां -> ( -> CountWithSubqueryDemo से गिनती (*) चुनें -> )=2;खाली सेट (0.03 सेकंड)
उपरोक्त क्वेरी में हमें खाली सेट मिल रहा है क्योंकि यदि तालिका में केवल दो रिकॉर्ड हैं तो यह पंक्ति लौटाता है। इसलिए, आइए तालिका से सभी रिकॉर्ड हटा दें और तालिका में 2 रिकॉर्ड डालें।
क्वेरी इस प्रकार है
mysql> टेबल को छोटा करें CountWithSubqueryDemo;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.95 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें।
क्वेरी इस प्रकार है
mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान ('जेम्स') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> CountWithSubqueryDemo (कर्मचारी नाम) मान (NULL) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.46 सेकंड) )
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें।
क्वेरी इस प्रकार है
mysql> CountWithSubqueryDemo से *चुनें;
निम्न आउटपुट है
<पूर्व>+----+--------------+| आईडी | कर्मचारी का नाम |+----+--------------+| 1 | जेम्स || 2 | NULL |+----+--------------+2 पंक्तियों में सेट (0.00 सेकंड)अब जहां क्लॉज में पंक्ति गणना के लिए क्वेरी है
mysql> CountWithSubqueryDemo से Id, EmployeeName चुनें -> कहां -> ( -> CountWithSubqueryDemo से गिनती (*) चुनें -> )=2;
निम्न आउटपुट है
<पूर्व>+----+--------------+| आईडी | कर्मचारी का नाम |+----+--------------+| 1 | जेम्स || 2 | NULL |+----+--------------+2 पंक्तियों में सेट (0.00 सेकंड)