第二章:查询结果排序
2.1以指定顺序返回查询结果
你想显示部门编号为 10 的员工的名字、职位和工资,并根据工资从低到高排序。
SELECT ename,job,sal
FROM emp
WHERE deptno=10
ORDER BY sal ASC
ORDER BY 子句可以对结果集排序。本实例针对 SAL 按照升序排列。默认情况下,ORDER BY会做升序排列,因此 ASC 子句是可选项。相应地,也可以通过指定 DESC 执行降序排列.
2.2 多字段排序
针对 EMP 表的数据,你想先按照 DEPTNO 升序排列,然后再按照 SAL 降序排列。
SELECT *
FROM emp
ORDER BY deptno ,sal DESC
2.3依据子串排序
你希望从 EMP 表检索员工的名字和职位,并且按照职位字段的最后两个字符对检索结果进行排序。
SELECT ename,job
FROM emp
ORDER BY SUBSTR(job,length(job)-2)
要想按照一个字符串的最后两个字符排序,需要先找到该字符串的结尾处(即字符串的长度),然后减去 2。这样,起始位置就是该字符串的倒数第 2 个字符。然后,你就可以截取从指定起始位置开始直到字符串结束的所有字符。
2.4 对含有字母和数字的列进行排序
2.5排序时对NULL值的处理
你可能想把非 Null 值以升序排列或降序排列&