MySQL asc、desc数据排序的实现

mjshldcsd 2019-12-02

数据排序 asc、desc

1、单一字段排序order by 字段名称

作用: 通过哪个或哪些字段进行排序

含义: 排序采用 order by 子句,order by 后面跟上排序字段,排序字段可以放多个,多个采用逗号间隔,order by默认采用升序(asc),如果存在 where 子句,那么 order by 必须放到where 语句后面。

(1)、按照薪水由小到大排序(系统默认由小到大)

例如: select ename,sal from emp order by sal;

MySQL asc、desc数据排序的实现 

(2)、取得job 为 MANAGER 的员工,按照薪水由小到大排序(系统默 认由小到大)

例如: select ename,job,sal from emp where job = ”MANAGER”order by sal;

MySQL asc、desc数据排序的实现
如果包含 where 语句 order by 必须放到 where 后面,如果没有 where 语句 order by 放到表的后面;

(3)、以下询法是错误的:

select * from emp order by sal whereselect * from emp order by sal where job = ‘MANAGER';

MySQL asc、desc数据排序的实现

2、手动指定字段排序

(1)、手动指定按照薪水由小到大排序(升序关键字 asc)

例如: select ename,sal from emp order by sal asc;

MySQL asc、desc数据排序的实现 

(2)、手动指定按照薪水由大到小排序(降序关键字desc)

例如: select ename,sal from emp order by sal desc;

MySQL asc、desc数据排序的实现 

3、多个字段排序

(1)、按照 job 和薪水倒序排序

例如: select ename,job,ename from emp order by job desc,sal desc;

MySQL asc、desc数据排序的实现 

注意: 如果采用多个字段排序,如果根据第一个字段排序重复了,会根据第二个字段排序;

4、使用字段位置排序

(1)、按照薪水升序排序(不建议采用此方法,采用数字含义不明确,可读性不强,程序不健壮)

select * from emp order by 6;

MySQL asc、desc数据排序的实现

相关推荐