ORDER BY क्लॉज में अल्पविराम से अलग करके एक से अधिक कॉलम नाम देकर मल्टी-कॉलम सॉर्टिंग करें।
सिंटैक्स:
SELECT Col1, Col2, ... FROM table_name ORDER BY Col1, Col2, ...;
उदाहरण - Student टेबल को Name और RollNo दोनों द्वारा क्रमबद्ध:
mysql> Select Name, RollNo from student order by name, rollno;
+--------+--------+
| name | rollno |
+--------+--------+
| Aarav | 150 |
| Aryan | 165 |
| Gaurav | 100 |
+--------+--------+
सभी कॉलम के साथ आउटपुट:
mysql> Select * from student order by name, rollno;
+--------+--------+--------+
| Name | RollNo | Grade |
+--------+--------+--------+
| Aarav | 150 | M.SC |
| Aryan | 165 | M.tech |
| Gaurav | 100 | B.tech |
+--------+--------+--------+
मिश्रित सॉर्ट ऑर्डर:
-- Name ASC (डिफ़ॉल्ट), RollNo DESC
SELECT * FROM student ORDER BY name ASC, rollno DESC;
-- Grade ASC, Name DESC
SELECT * FROM student ORDER BY Grade, Name DESC;
नियम:
- पहला कॉलम प्राथमिक सॉर्ट कुंजी है
- दूसरा कॉलम टाई-ब्रेकर के रूप में काम करता है (जब पहला कॉलम समान हो)
- प्रत्येक कॉलम का अपना
ASC/DESCहो सकता है
प्रदर्शन टिप: मल्टी-कॉलम सॉर्टिंग के लिए कंपोजिट इंडेक्स INDEX(name, rollno) बनाएं।