SQL ORDER BY 关键字

ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。

ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

SQL ORDER BY 语法

SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

pangugle_news_category 表样本数据

category_id category_title category_desc category_createtime category_admin
1 百度 百度公司 2020-09-16 18:09:52 admin
2 盘古歌 盘古歌技术 2020-09-16 18:12:31 admin
3 Google 谷歌公司 2020-09-16 18:12:56 u1
4 阿里巴巴 阿里巴巴公司 2020-09-16 18:13:20 u1
5 qq 腾讯公司 2020-09-16 18:13:36 u1

ORDER BY 实例

下面的 SQL 语句从 "pangugle_news_category " 表中选取所有网站,并按照 "category_id" 列倒序:

  • ORDER BY asc 倒序实例
category_id category_title category_desc category_createtime category_admin
1 百度 百度公司 2020-09-16 18:09:52 admin
2 盘古歌 盘古歌技术 2020-09-16 18:12:31 admin
3 Google 谷歌公司 2020-09-16 18:12:56 u1
4 阿里巴巴 阿里巴巴公司 2020-09-16 18:13:20 u1
5 qq 腾讯公司 2020-09-16 18:13:36 u1
  • ORDER BY DESC 倒序实例
SELECT * FROM pangugle_news_category
ORDER BY category_id desc;

执行输出结果:

category_id category_title category_desc category_createtime category_admin
5 qq 腾讯公司 2020-09-16 18:13:36 u1
4 阿里巴巴 阿里巴巴公司 2020-09-16 18:13:20 u1
3 Google 谷歌公司 2020-09-16 18:12:56 u1
2 盘古歌 盘古歌技术 2020-09-16 18:12:31 admin
1 百度 百度公司 2020-09-16 18:09:52 admin

ORDER BY 多列

下面的 SQL 语句从 "pangugle_news_category" 表中选取所有数据,并按照 "category_id" 和 "category_createtime" 列排序:

实例

SELECT * FROM pangugle_news_category
ORDER BY category_id,category_createtime;

也可以指定排序规则

SELECT * FROM pangugle_news_category
ORDER BY category_id desc,category_createtime desc;

注意:

是先排序 category_id, 再排 category_createtime !