ใช้ ORDER BY บน INFORMATION_SCHEMA.COLUMNS เพื่อจัดลำดับชื่อคอลัมน์
รูปแบบไวยากรณ์
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'yourTableName' AND COLUMN_NAME LIKE 'yourPrefix%' ORDER BY COLUMN_NAME DESC;
ตัวอย่างการใช้งาน
สร้างตาราง:
mysql> CREATE TABLE OrderByColumnName ( StudentId INT, StudentFirstName VARCHAR(10), StudentLastName VARCHAR(10), StudentAddress VARCHAR(20), StudentAge INT, StudentMarks INT );
กรณีที่ 1: เรียงลำดับ DESC
mysql> SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'OrderByColumnName' AND COLUMN_NAME LIKE 'student%' ORDER BY COLUMN_NAME DESC;
+------------------+ | COLUMN_NAME | +------------------+ | StudentMarks | | StudentLastName | | StudentId | | StudentFirstName | | StudentAge | | StudentAddress | +------------------+ 6 rows in set (0.00 sec)
กรณีที่ 2: เรียงลำดับ ASC (ค่าเริ่มต้น)
mysql> SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'OrderByColumnName' AND COLUMN_NAME LIKE 'student%' ORDER BY COLUMN_NAME;
+------------------+ | COLUMN_NAME | +------------------+ | StudentAddress | | StudentAge | | StudentFirstName | | StudentId | | StudentLastName | | StudentMarks | +------------------+ 6 rows in set (0.00 sec)
ไม่ต้องระบุ ASC เพราะเป็นค่าเริ่มต้น