ORDER BY 子句将查询结果按照指定的列排序,语法为:SELECT ...FROM ...ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], ...,可以对多列排序,默认情况下 NULL 值显示在首位,可以使用 NULLS FIRST 或 NULLS LAST 选项指定其位置,还可以使用表达式对结果进行排序。

MySQL 中 ORDER BY 的含义与用法
什么是 ORDER BY?
ORDER BY 子句用于对查询结果按照指定的列进行排序。
语法:
SELECT ... FROM ... ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], ...
其中:
-
column1,column2...:要排序的列名 -
ASC:升序排序(从小到大) -
DESC:降序排序(从大到小)
用法:
- 单列排序:
使用单个列名对结果进行排序:
SELECT * FROM table ORDER BY column1 ASC;
- 多列排序:
使用多个列名对结果按照指定的顺序进行排序:
SELECT * FROM table ORDER BY column1 ASC, column2 DESC;
- NULL 值处理:
默认情况下,NULL 值在排序中显示在第一位。使用 NULLS FIRST 或 NULLS LAST 选项指定 NULL 值的显示位置:
SELECT * FROM table ORDER BY column1 ASC NULLS FIRST;
- 表达式排序:
可以使用表达式对结果进行排序:
SELECT * FROM table ORDER BY column1 * 2 DESC;
示例:
以下示例按城市名称升序排序:
SELECT * FROM cities ORDER BY city_name ASC;
以下示例按人口数降序并按城市名称升序排序:
SELECT * FROM cities ORDER BY population DESC, city_name ASC;










