排序
-
使用ORDER BY 字句
对查询出的数据按一定规则进行排序操作,使用ORDER BY子句。语法:SELECT <*,COLUMN[alias],...> FROM table [WHERE condition(s)] [ORDER BY column [ASC|DESC]];ORDER BY 必须出现在SELECT中的最后一个子句。
示例:对职员表按薪水排序
SELECT ENAME,SAL FROM emp ORDER BY SAL;
-
ASC 和 DESC
排序时默认按升序排列,即由小及大,ASC用来指定升序排序,DESC用来指定降序排序。
因为NULL值视作最大,则升序排列时,排在最后,降序排列时排在最前。如果不写ASC或DESC,默认是ASC,升序排列。
示例:按员工的经理升序排序
SELECT EMPNO,ENAME,MGR FROM emp WHERE DEPTNO = 10 ORDER BY MGR;
降序排列,必须指明,按员工的薪水倒序排序
SELECT ENAME,SAL FROM emp ORDER BY SAL DESC;
-
多个列排序
当以多列作为排序标准时,首先按照第一列进行排序,如果第一列数据相同,再以第二列排序,以此类推。多列排序时,不管正序还是倒序,每个列需要单独设置排序方式。
示例:对职员表中的职员排序,先按照部门编码正序排列,再按照薪水降序排列
SELECT ENAME,DEPTNO,SAL FROM emp ORDER BY DEPTNO ASC,SAL DESC;
网友评论