介绍
如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的 order by 子句来设定你想按哪个字段哪种方式来进行排序,再返回搜索结果。
语法
select
字段名1,字段名2,……
from 表名
order by 字段名1 [asc|desc],字段名2[asc|desc]……
- asc代表升序,desc代表降序,如果不写默认升序
- order by用于子句中可以支持单个字段,多个字段,表达式,函数,别名
- order by子句,放在查询语句的最后面。LIMIT子句除外
案例(牛客)
要求先按照gpa升序排序,再按照年龄升序排序输出
所以order by 后 的顺序为gpa,age(默认为升序排序,所以不用加desc)
select device_id,gpa,age from user_profile order by gpa,age;
本题要求降序排序,和37 题的区别是在gpa 和 gpa 的后面加desc(desc的作用就是降序)
select device_id,gpa,age from user_profile order by gpa desc,age desc;