COUNT(DISTINCT) के साथ अद्वितीय मान गिनना
जब किसी कॉलम में डुप्लिकेट मान हों और आपको केवल अद्वितीय मानों की संख्या चाहिए, तो COUNT(DISTINCT column_name) का उपयोग करें।
टेबल और डेटा तैयार करना
mysql> CREATE TABLE DemoTable (
StudentId INT,
StudentFirstName VARCHAR(100)
);
Query OK, 0 rows affected (0.88 sec)
mysql> INSERT INTO DemoTable VALUES(100,'John'); Query OK, 1 row affected (0.32 sec) mysql> INSERT INTO DemoTable VALUES(101,'Chris'); Query OK, 1 row affected (0.12 sec) mysql> INSERT INTO DemoTable VALUES(102,'John'); Query OK, 1 row affected (0.19 sec) mysql> INSERT INTO DemoTable VALUES(103,'Sam'); Query OK, 1 row affected (0.14 sec) mysql> INSERT INTO DemoTable VALUES(104,'Sam'); Query OK, 1 row affected (0.13 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+-----------+------------------+ | StudentId | StudentFirstName | +-----------+------------------+ | 100 | John | | 101 | Chris | | 102 | John | | 103 | Sam | | 104 | Sam | +-----------+------------------+ 5 rows in set (0.00 sec)
विशिष्ट मानों की गणना करने की क्वेरी
mysql> SELECT COUNT(DISTINCT StudentFirstName) FROM DemoTable;
परिणाम:
+----------------------------------+ | count(distinct StudentFirstName) | +----------------------------------+ | 3 | +----------------------------------+ 1 row in set (0.00 sec)
व्याख्या: यहां तीन अद्वितीय नाम हैं: John, Chris, और Sam। DISTINCT कीवर्ड डुप्लिकेट को हटा देता है, और COUNT() केवल अद्वितीय मान गिनता है।