Computer >> Máy Tính >  >> Lập trình >> MySQL

Nhận tên cột bảng theo thứ tự bảng chữ cái trong MySQL?

Để lấy tên cột trong bảng theo thứ tự bảng chữ cái, bạn cần sử dụng ORDER BY. Cú pháp như sau -

SELECT anyReferenceName.COLUMN_NAME FROM
INFORMATION_SCHEMA.COLUMNS anyReferenceName
WHERE anyReferenceName.TABLE_NAME = ’yourTableName’
ORDER BY anyReferenceName.COLUMN_NAME

Đầu tiên, chúng ta cần lấy tất cả các cột và sau đó chúng ta cần sử dụng ORDER BY. Trong truy vấn trên, chúng tôi nhận được tất cả các cột bằng cách sử dụng INFORMATION_SCHEMA.COLUMNS.

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

mysql> create table ColumnsOrder
   -> (
   -> StudentFirstName varchar(20),
   -> Id int,
   -> StudentAge int,
   -> StudentLastName varchar(20)
   -> );
Query OK, 0 rows affected (0.90 sec)

Triển khai cú pháp trên để lấy các cột trong bảng theo thứ tự bảng chữ cái.

Trường hợp 1 - Theo mặc định, ORDER BY cung cấp thứ tự tăng dần.

Truy vấn như sau -

mysql> select ref.column_name from information_schema.columns ref
   -> where ref.table_name = 'ColumnsOrder'
   -> order by ref.column_name;

Sau đây là kết quả -

+------------------+
| COLUMN_NAME      |
+------------------+
| Id               |
| StudentAge       |
| StudentFirstName |
| StudentLastName  |
+------------------+
4 rows in set (0.13 sec)

Trường hợp 2 - Muốn theo thứ tự giảm dần thì cuối cùng dùng lệnh DESC.

Truy vấn như sau -

mysql> select ref.column_name from information_schema.columns ref
   -> where ref.table_name = 'ColumnsOrder'
   -> order by ref.column_name desc;

Sau đây là kết quả -

+------------------+
| COLUMN_NAME      |
+------------------+
| StudentLastName  |
| StudentFirstName |
| StudentAge       |
| Id               |
+------------------+
4 rows in set (0.00 sec)