排序数据
1. 排序规则
- 如果没有使用排序操作,默认情况下查询返回的数据是按照添加数据的顺序显示的。
- 使用
ORDER BY
对查询到的数据进行排序操作。 -
使用
ORDER BY
子句排序- ASC(ascend): 升序
- DESC(descend):降序
- ORDER BY 子句在SELECT语句的结尾。
2. 单列排序
- 按照salary从高到低的顺序显示员工信息
SELECT employee_id,last_name,salary
FROM employees
ORDER BY salary DESC;
- 可以使用列的别名,进行排序
SELECT employee_id,salary,salary * 12 annual_sal
FROM employees
ORDER BY annual_sal;
- 注意:列的别名只能在 ORDER BY 中使用,不能在WHERE中使用。
- 如下操作报错:
SELECT employee_id,salary,salary * 12 annual_sal
FROM employees
WHERE annual_sal > 81600;
- 强调格式:
WHERE
需要声明在FROM
后,ORDER BY
之前
SELECT employee_id,salary,department_id
FROM employees
WHERE department_id IN (50,60,70)
ORDER BY department_id DESC;
3. 多列排序
- 显示员工信息,按照department_id的降序排列,salary的升序排列
SELECT employee_id,salary,department_id
FROM employees
ORDER BY department_id DESC,salary ASC;
- 可以使用不在SELECT列表中的列排序。
- 在对多列进行排序的时候,首先排序的第一列必须有相同的列值,才会对第二列进行排序。如果第一列数据中所有值都是唯一的,将不再对第二列进行排序。