主要语法:
select 查询列表
from 表
【where 筛选条件】
order by 排序列表 asc(升序)|desc(降序)
特点:
(1)asc代表升序,desc代表降序,默认是升序排列
(2)order by语句支持单个字段、多个字段、函数、别名、表达式查询
(3)order by语句一般放在查询语句最后面(where子句后面),limit除外
- 查询员工信息,工资从高到低排序:(默认asc升序排序)
SELECT *
FROM employees
ORDER BY salary DESC;
- 查询部门编号大于等于90的员工信息,按照入职信息先后进行排序
SELECT *
FROM employees
WHERE department_id>=90
ORDER BY hiredate;
- 按年薪高低显示员工信息和年薪(Order by 支持别名查询)
原表中并无年薪字段,所以要先构造一个年薪表达式并起别名为年薪:
SELECT *,salary*12*(1+IFNULL(commission_pct,0)) 年薪
FROM employees
ORDER BY 年薪 DESC;
- 查询姓名last_name长度显示员工姓名和工资(Order by 支持函数查询)
SELECT last_name,salary
FROM employees
ORDER BY LENGTH(last_name) DESC;
- 查询员工信息,先按工资升序,再按员工编号降序(Order by 多字段排序)
SELECT *
FROM employees
ORDER BY salary ASC,employee_id DESC;