5.3 进阶3:排序查询
Posted qifanren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5.3 进阶3:排序查询相关的知识,希望对你有一定的参考价值。
5.3 进阶3:排序查询
5.3.1 语法
select
要查询的东西
from
表
where
条件
order by 排序的字段|表达式|函数|别名 【asc|desc】
5.3.2 注意
- ACE代表升序,DESC代表的是降序,如果不写默认升序
- order by 子句中可以支持单个字段、多个字段、表达式、函数、别名
- order by子句一般是放在查询语句的最后面的,limit子句除外
5.3.3 案例
- 案例1:查询员工信息,要求工资从高到低排序
SELECT * FROM employees ORDER BY salary DESC;
SELECT * FROM employees ORDER BY salary ASC;
- 案例2:查询部门编号>=90的员工信息,按入职时间的先后进行排序
SELECT *
FROM employees
WHERE department_id >= 90
ORDER BY hiredatE ASC
- 案例3:按年薪的高低显示员工的信息和年薪
SELECT *,salary*12*(1+IFNULL(commission_pct,0)) AS 年薪
FROM employees
ORDER BY salary*12*(1+IFNULL(commission_pct,0)) DESC
# 或者可以按照别名排序
ORDER BY 年薪
- 案例5:按姓名的长度显示员工的姓名和工资[按函数排序]
SELECT LENGTH(last_name) 字节长度,last_name,salary
FROM employees
ORDER BY 字节长度 DESC
- 案例6:查询员工信息,要求先按照工资升序,再按照员工编号降序
SELECT *
FROM employees
ORDER BY salary ASC, employee_id DESC
- 案例7:查询有相中包含e的员工信息,并且先按照邮箱的字节数升序,再按照部门号升序
select *
from employees
where email like \'%e%\'
order by length(email) desc, department_id asc;
以上是关于5.3 进阶3:排序查询的主要内容,如果未能解决你的问题,请参考以下文章