जब हम SELECT स्टेटमेंट में GROUP BY क्लॉज का उपयोग एग्रीगेट फंक्शन के बिना करते हैं तो यह DISTINCT क्लॉज की तरह व्यवहार करेगा। उदाहरण के लिए, हमारे पास निम्न टेबल है -
mysql> Select * from testing; +------+---------+---------+ | id | fname | Lname | +------+---------+---------+ | 200 | Raman | Kumar | | 201 | Sahil | Bhalla | | 202 | Gaurav | NULL | | 203 | Aarav | NULL | | 204 | Harshit | Khurana | | 205 | Rahul | NULL | | 206 | Piyush | Kohli | | 207 | Lovkesh | NULL | | 208 | Gaurav | Kumar | | 209 | Raman | Kumar | +------+---------+---------+ 10 rows in set (0.00 sec)
कॉलम 'Lname' पर DISTINCT क्लॉज का उपयोग करके, MySQL निम्न रिजल्ट सेट लौटाता है।
mysql> select Distinct LNAME from testing; +---------+ | LNAME | +---------+ | Kumar | | Bhalla | | NULL | | Khurana | | Kohli | +---------+ 5 rows in set (0.00 sec)
अब, GROUP BY क्लॉज का उपयोग निम्न प्रकार से करके, हम वही रिजल्ट सेट प्राप्त कर सकते हैं जो हमें DISTINCT का उपयोग करके मिला था -
mysql> Select LNAME from testing GROUP BY Lname; +---------+ | LNAME | +---------+ | NULL | | Bhalla | | Khurana | | Kohli | | Kumar | +---------+ 5 rows in set (0.04 sec)
हम MySQL द्वारा लौटाए गए दोनों रिजल्ट सेट के बीच अंतर देख सकते हैं कि GROUP BY क्लॉज का उपयोग करने वाली MySQL क्वेरी द्वारा लौटाया गया रिजल्ट सेट क्रमबद्ध है और इसके विपरीत, DISTINCT क्लॉज का उपयोग करने वाली MySQL क्वेरी द्वारा लौटाया गया रिजल्ट सेट क्रमबद्ध नहीं है।