在 MySQL 中按字母顺序获取表列名?

mysqlmysqli database更新于 2025/4/22 14:36:17

要按字母顺序获取表列名,需要使用 ORDER BY。语法如下 −

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

首先,我们需要获取所有列,然后我们需要使用 ORDER BY。在上面的查询中,我们使用 INFORMATION_SCHEMA.COLUMNS 获取所有列。

为了理解上述语法,让我们创建一个表。创建表的查询如下 −

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

执行上述语法,按字母顺序获取表格列。

案例 1 − 默认情况下,ORDER BY 给出升序排列。

查询如下 −

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

以下是输出 −

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

案例 2 − 如果要按降序排列,则最后使用 DESC 命令。

查询如下 −

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

以下是输出 −

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

相关文章


有用资源