Truy vấn INFORMATION_SCHEMA.COLUMNS kết hợp ORDER BY COLUMN_NAME để sắp xếp tên cột.
Cú pháp
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'ten_bang'
AND TABLE_SCHEMA = 'ten_database'
ORDER BY COLUMN_NAME [ASC|DESC];
Ví dụ minh họa
Tạo bảng ColumnsOrder với thứ tự cột ngẫu nhiên:
CREATE TABLE ColumnsOrder (
StudentFirstName VARCHAR(20),
Id INT,
StudentAge INT,
StudentLastName VARCHAR(20)
);
Trường hợp 1: Thứ tự tăng dần (mặc định)
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'ColumnsOrder'
ORDER BY COLUMN_NAME;
+------------------+
| COLUMN_NAME |
+------------------+
| Id |
| StudentAge |
| StudentFirstName |
| StudentLastName |
+------------------+
Trường hợp 2: Thứ tự giảm dần
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'ColumnsOrder'
ORDER BY COLUMN_NAME DESC;
+------------------+
| COLUMN_NAME |
+------------------+
| StudentLastName |
| StudentFirstName |
| StudentAge |
| Id |
+------------------+
Lưu ý: Luôn chỉ định TABLE_SCHEMA nếu có nhiều database trùng tên bảng.