Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySql में सबक्वेरी के समान क्वेरी लिखे बिना WHERE क्लॉज में वास्तविक पंक्ति गणना (COUNT(*)) का उपयोग कैसे करें?

<घंटा/>

जहां क्लॉज की मदद से इसे हासिल करें।

वाक्य रचना इस प्रकार है

अपना कॉलमनाम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 सेकंड)
  1. MySQL व्यू का उपयोग WHERE क्लॉज के साथ कैसे करें?

    MySQL व्यू के लिए WHERE क्लॉज के साथ, सिंटैक्स इस प्रकार है - अपने व्यूनाम से * चुनें जहां आपका कॉलमनाम=आपका वैल्यू; आइए पहले एक − . बनाएं );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.26 सेकंड) इंसर्ट का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1432(StudentName,StudentBranchName) मानों में

  1. MySQL के साथ एक ही पंक्ति में अलग-अलग रिकॉर्ड से गिनती कैसे प्रदर्शित करें?

    इसके लिए आप ग्रुप बाय क्लॉज के साथ GROUP_CONCAT (), COUNT () का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.62 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल (कंपनीनाम) मानों (अमेज़ॅन) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित ( 0.0

  1. एक MySQL कॉलम में प्रत्येक पंक्ति के समान मान की गणना करें?

    प्रत्येक पंक्ति के समान मान को गिनने के लिए, ग्रुप बाय क्लॉज के साथ COUNT(*) का उपयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1818 (Id int, Name varchar(20));क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1818 मानों में डा