要按字母顺序获取表列名称,您需要使用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) -> );
实现以上语法以按字母顺序获取表列。
情况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)