Peripateticism

Yuens' blog

View the Project on GitHub

header

查询排序的SQL语法

内容参考《李兴华Oracle数据库》的查询排序部分(链接见文末参考),本节主要包括:[toc]

1. 查询排序(重点)

若希望查询出的数据可按升序或降序排列,可使用ORDER BY子句,此子句的语法如下:

SELECT [DISTINCT] * | 列 [别名], 列 [别名], … FROM 表名称 [别名] [WHERE 条件(s)]; [ORDER BY 字段 [ASC|DESC], 字段 [ASC|DESC], ..] 步骤三:控制要显示的数据
步骤一:确定数据源
步骤二:根据判断条件选择参与的数据行数
步骤四:数据排序

在以上的语法之中最重要的一点:ORDER BY子句是写在最后行的,而且永恒在最后一行,同时ORDER BY也是在SELECT子句之后执行的,那么也就可以得出一个结论:ORDER BY可以使用SELECT子句里面定义的别名。

在使用ORDER BY排序的时候有两种排序的模式:

1.1 范例:对工资按降序排序。

SELECT *
FROM emp
ORDER BY sal DESC;

1.2 范例:对工资降序排序,若工资相同,按雇佣日期由早到晚排序

在日期的表示中,日期越早,数字越小,由早到晚意味着升序。

SELECT *
FROM emp
ORDER BY sal DESC, hiredate ASC;

1.3 范例:按年薪排序,因为ORDER BY是在SELECT后执行

 

SELECT empno, ename, (sal*12) income
FROM emp
ORDER BY income;

1.4 范例:查询出所有办事员的信息,按工资降序排序

SELECT empno, ename, sal
FROM emp
WHERE job=’CLERK’
ORDER BY sal DESC;

目前为止最重要的SQL基本语法就以上知识。

2. 参考