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

MySQL CASE स्टेटमेंट में कॉलम डेटा का उपयोग कैसे किया जा सकता है?


इसे समझने के लिए 'छात्र' तालिका के आंकड़ों पर विचार करें, इस प्रकार -

mysql> Select * from Students;
+----+-----------+-----------+----------+----------------+
| id | Name      | Country   | Language | Course         |
+----+-----------+-----------+----------+----------------+
| 1  | Francis   | UK        | English  | Literature     |
| 2  | Rick      | USA       | English  | History        |
| 3  | Correy    | USA       | English  | Computers      |
| 4  | Shane     | France    | French   | Computers      |
| 5  | Validimir | Russia    | Russian  | Computers      |
| 6  | Steve     | Australia | English  | Geoinformatics |
| 7  | Rahul     | India     | Hindi    | Yoga           |
| 8  | Harshit   | India     | Hindi    | Computers      |
| 9  | Harry     | NZ        | English  | Electronics    |
+----+-----------+-----------+----------+----------------+
9 rows in set (0.00 sec)

अब, मान लीजिए यदि हम यह जानना चाहते हैं कि कितने छात्र USA, UK, NZ, INDIA, RUSSIA, FRANCE आदि से संबंधित हैं, तो हम CASE स्टेटमेंट के भीतर कॉलम 'देश' का उपयोग इस प्रकार कर सकते हैं:-

mysql> Select SUM(CASE WHEN country = 'USA' THEN 1 ELSE 0 END) AS USA,
-> SUM(CASE WHEN country = 'UK' THEN 1 ELSE 0 END) AS UK,
-> SUM(CASE WHEN country = 'INDIA' THEN 1 ELSE 0 END) AS INDIA,
-> SUM(CASE WHEN country = 'Russia' THEN 1 ELSE 0 END) AS Russia,
-> SUM(CASE WHEN country = 'France' THEN 1 ELSE 0 END) AS France,
-> SUM(CASE WHEN country = 'NZ' THEN 1 ELSE 0 END) AS NZ,
-> SUM(CASE WHEN country = 'Australia' THEN 1 ELSE 0 END) AS Australia
-> From Students;
+------+------+-------+--------+--------+------+-----------+
| USA  | UK   | INDIA | Russia | France | NZ   | Australia |
+------+------+-------+--------+--------+------+-----------+
| 2    | 1    | 2     | 1      | 1      | 1    | 1         |
+------+------+-------+--------+--------+------+-----------+
1 row in set (0.07 sec)

  1. मैं MySQL में एक प्रिंट स्टेटमेंट का अनुकरण कैसे कर सकता हूं?

    MySQL में प्रिंट स्टेटमेंट का अनुकरण करने के लिए, आप सेलेक्ट स्टेटमेंट का उपयोग कर सकते हैं। वाक्य रचना इस प्रकार है - anyStringValue को ; . के रूप में चुनें आप उपरोक्त सिंटैक्स को MySQL कमांड लाइन क्लाइंट पर देख सकते हैं। केस 1 एक स्ट्रिंग प्रिंट करने के लिए। Hello MYSQL को के रूप में चुनें; आ

  1. MySQL में विशिष्ट कॉलम डेटा कैसे निर्यात करें?

    MySQL में विशिष्ट कॉलम डेटा निर्यात करने के लिए, OUTFILE का उपयोग करें - अपनेटेबलनाम से अपने कॉलमनाम को आउटफाइल yourLocationOfFile में चुनें; आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(20), StudentLastName varchar(20));

  1. मैं MySQL में किसी तालिका में प्रत्येक कॉलम को कैसे हटा सकता हूं?

    MySQL में किसी तालिका के प्रत्येक कॉलम को हटाने के लिए, आप DROP TABLE कमांड का उपयोग कर सकते हैं। निम्नलिखित वाक्य रचना है: ड्रॉप टेबल yourTableName; आइए पहले एक टेबल बनाएं: टेबल बनाएं डेमोटेबल (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(20), StudentLastName varcha