आइए पहले एक टेबल बनाते हैं:
mysql> create table DemoTable783 ( FirstName varchar(100) ); Query OK, 0 rows affected (0.65 sec)
इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:
mysql> insert into DemoTable783 values('Adam');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable783 values('Chris');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable783 values('Chris');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable783 values('Adam');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Adam');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Robert');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable783 values('Robert');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable783 values('Adam');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Chris');
Query OK, 1 row affected (0.14 sec)
सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:
mysql> select * from DemoTable783;
यह निम्नलिखित आउटपुट देगा:
+-----------+ | FirstName | +-----------+ | Adam | | Chris | | Chris | | Adam | | Adam | | Robert | | Robert | | Adam | | Chris | +-----------+ 9 rows in set (0.00 sec)
MySQL में पंक्तियों को गिनने और सॉर्ट करने की क्वेरी
mysql> select FirstName, count(*) from DemoTable783 group by FirstName order by count(*) desc;
यह निम्नलिखित आउटपुट देगा:
+-----------+----------+ | FirstName | count(*) | +-----------+----------+ | Adam | 4 | | Chris | 3 | | Robert | 2 | +-----------+----------+ 3 rows in set (0.00 sec)
व्याख्या
GROUP BY FirstNameसमान नामों को समूहित करता हैCOUNT(*)प्रत्येक समूह में पंक्तियों की गिनती करता हैORDER BY COUNT(*) DESCपरिणामों को गिनती के अवरोही क्रम में सॉर्ट करता है- सबसे अधिक बार आने वाला नाम (Adam: 4) पहले आता है
यह पैटर्न आवृत्ति विश्लेषण, लोकप्रिय आइटम खोजने, आदि के लिए सामान्य है।