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

MySQL में एक ही क्वेरी में दो अलग-अलग कॉलम गिनें?

<घंटा/>

आप एक ही क्वेरी में दो अलग-अलग कॉलम गिनने के लिए CASE स्टेटमेंट का उपयोग कर सकते हैं। अवधारणा को समझने के लिए, आइए पहले एक तालिका बनाएं। तालिका बनाने की क्वेरी इस प्रकार है।

mysql> टेबल बनाएं CountDifferentDemo -> ( -> ProductId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> ProductName varchar(20), -> ProductColor varchar(20), -> ProductDescription varchar(20) -> );Query OK , 0 पंक्तियाँ प्रभावित हुई (1.06 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें।

क्वेरी इस प्रकार है

mysql> CountDifferentDemo(ProductName,ProductColor,ProductDescription) मानों('Product-1','Red','Used') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.46 सेकंड) mysql> CountDifferentDemo(ProductName, उत्पाद रंग, उत्पाद विवरण) मान ('उत्पाद -1', 'नीला', 'प्रयुक्त'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> CountDifferentDemo में डालें (उत्पाद नाम, उत्पाद रंग, उत्पाद विवरण) मान ('उत्पाद -2') , 'ग्रीन', 'नया'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> काउंटडिफरेंटडेमो (उत्पाद नाम, उत्पाद रंग, उत्पाद विवरण) मान ('उत्पाद -2', 'नीला', 'नया') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) mysql> CountDifferentDemo (उत्पाद नाम, उत्पाद रंग, उत्पाद विवरण) मान ('उत्पाद -3', 'हरा', 'नया') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.21 सेकंड) mysql> CountDifferentDemo(ProductName,ProductColor,ProductDescription) मान ('उत्पाद -4', 'नीला', 'प्रयुक्त') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें।

क्वेरी इस प्रकार है

mysql> CountDifferentDemo से *चुनें;

निम्न आउटपुट है

<पूर्व>+-----------+---------------+--------------+----- ---------------+| उत्पाद आईडी | उत्पाद का नाम | उत्पाद रंग | उत्पाद विवरण |+-----------+----------------+--------------+------ --------------+| 1 | उत्पाद-1 | लाल | प्रयुक्त || 2 | उत्पाद-1 | नीला | प्रयुक्त || 3 | उत्पाद-2 | हरा | नया || 4 | उत्पाद-2 | नीला | नया || 5 | उत्पाद-3 | हरा | नया || 6 | उत्पाद-4 | नीला | प्रयुक्त |+-----------+------------- --------------+6 पंक्तियाँ सेट में (0.01 सेकंड)

यहां एक ही क्वेरी में दो अलग-अलग कॉलम गिनने की क्वेरी दी गई है यानी हम एक विशेष रंग "लाल" और विवरण "नया" की घटना की गणना कर रहे हैं

mysql> ProductName चुनें, -> SUM (केस जब ProductColor ='Red' तब 1 ELSE 0 END) कलर के रूप में, -> SUM (केस जब ProductDescription ='New' तब 1 ELSE 0 END) as Desciption -> from CountDifferentDemo -> ProductName द्वारा समूह;

निम्न आउटपुट है

<पूर्व>+---------------+----------+---------------+| उत्पाद का नाम | रंग | उतर |+---------------+----------+---------------+| उत्पाद-1 | 1 | 0 || उत्पाद-2 | 0 | 2 || उत्पाद-3 | 0 | 1 || उत्पाद-4 | 0 | 0 |+---------------+----------+---------------+4 पंक्तियों में सेट (0.12 सेकंड)
  1. एक ही क्वेरी में एक साथ कई कॉलम सॉर्ट करने के लिए MySQL क्वेरी

    एकाधिक कॉलम सॉर्ट करने के लिए, ORDER BY GREATEST() का उपयोग करें। आइए पहले एक − . बनाएं );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.79 सेकंड) इंसर्ट का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1395 मानों में डालें(10,20,30);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) − . का चयन करके तालिका स

  1. MySQL में दो अलग-अलग कॉलम का उपयोग कर कस्टम सॉर्टिंग?

    इसके लिए CASE स्टेटमेंट के साथ ORDER BY क्लॉज का इस्तेमाल करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.51 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1610 मानों में डालें (85, कैरोल); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड) चयन कथन का उपय

  1. एकल MySQL क्वेरी के साथ दो कॉलम अपडेट करें

    इसके लिए आपको केवल एक बार SET कमांड का इस्तेमाल करना होगा। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1909 (Id int NOT NULL, FirstName varchar(20), LastName varchar(20));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1909 मानों में