排序
在SQL语言中,如果想要对结果集进行按照指定字段排序,需要使用Order By
,排序不是真正改变真正数据储存的排序,只是对展示的结果集进行排序。
1、升序
升序,就是从小到大的排序,例如:1、2、3、4、5、6、7、8、9…
在SQL语言中,默认的排序就是升序排序,关键字为asc
,默认升序关键字可以省略
-- 按照员工工资排序
select * from emp order by sal -- 省略asc关键字
select * from emp order by sal asc
运行结果 |
---|
两条SQL语句的结果一样。
2、降序
降序,就是从大到小了,例如:9、8、7、6、5、4、3、2、1…
和升序一样,降序有降序的关键字desc
,降序的关键字不能省略
-- 按照员工工资降序排列
select * from emp order by sal desc
运行结果 |
---|
3、多个字段排序
SQL语言中,可以使用多个字段排序,默认使用字段1,如果字段1的比较结果一样,则使用字段2排序
-- 按照部门排序(升序),如果部门一样,按照工资排序(降序)
select * from emp order by deptno,sal desc
运行结果 |
---|
4、null排序
null做为一个特殊的存在,也有自己的排序关键字
- nulls first:所有的null在前面
- nulls last:所有的null在后面
select * from emp order by comm nulls first
运行结果 |
---|