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

यदि किसी कॉलम में कुछ NULL मान भी संग्रहीत हैं तो MySQL COUNT() फंक्शन क्या लौटाता है?


जब हम किसी कॉलम में संग्रहीत मानों को गिनने के लिए MySQL COUNT() फंक्शन का उपयोग करते हैं जिसमें कुछ NULL मान भी संग्रहीत हैं, तो MySQL NULL को अनदेखा करता है और केवल गैर-NULL मानों के लिए परिणाम लौटाता है। इसे समझने के लिए, हम 'Employee' टेबल से निम्नलिखित डेटा का उपयोग कर रहे हैं:

mysql> SELECT * FROM Employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | 20000  |
| 6  | Mohan  | 30000  |
| 7  | Aryan  | NULL   |
| 8  | Vinay  | NULL   |
+----+--------+--------+
8 rows in set (0.00 sec)

अब, निम्नलिखित क्वेरी कॉलम 'Salary' पर COUNT() फंक्शन लागू करती है:

mysql> SELECT COUNT(salary) FROM employee568;
+---------------+
| COUNT(salary) |
+---------------+
| 6             |
+---------------+
1 row in set (0.15 sec)

उपरोक्त परिणाम सेट से, यह स्पष्ट है कि MySQL NULL को अनदेखा करता है और केवल गैर-NULL मानों के लिए गिनती लौटाता है।


  1. - कई NULL मान वाले कॉलम पर DISTINCT क्लॉज का उपयोग करने पर MySQL क्या लौटाता है?

    जब हम कई NULL मान वाले कॉलम पर DISTINCT क्लॉज का उपयोग करते हैं तो MySQL द्वारा सभी NULL मानों को समान माना जाता है। इसका मतलब DISTINCT क्लॉज के गुणों के अनुसार, MySQL रिजल्ट सेट में केवल एक NULL मान लौटाएगा और दूसरों को हटा देगा। testing नामक टेबल का उदाहरण लें जिसमें Lname कॉलम में कई NULL मान ह

  1. - MySQL में NULL मानों की गिनती कैसे करें?

    CASE स्टेटमेंट के साथ SUM() का उपयोग MySQL में किसी कॉलम में NULL मानों की संख्या गिनने के लिए CASE स्टेटमेंट का उपयोग SUM() के साथ करें। सिंटैक्स SELECT SUM(CASE WHEN yourColumn IS NULL THEN 1 ELSE 0 END) AS null_count FROM yourTableName; उदाहरण 1. टेबल बनाना CREATE TABLE DemoTable ( Id INT

  1. - MySQL में एक ही क्वेरी से कॉलम मान गिनें और NULL को अनदेखा करें

    इसके लिए COUNT() मेथड का उपयोग करें, जिसमें NULL मान शामिल नहीं होते। टेबल बनाएं mysql> create table DemoTable ( -> Name varchar(100), -> CountryName varchar(100) -> ); Query OK, 0 rows affected (0.49 sec) रिकॉर्ड्स डालें mysql> insert into DemoTable values(John,null); Q