MySQL基础(四)——DQL之排序查询

本篇文章主要是对MySQL学习时的一些总结,作为学习笔记记录。

数据来源

数据部分来自于b站尚硅谷MySQL课程

排序查询

语法

SELECT querylist FROM tablename WHERE conditions ORDER BY sortcondition;
  • order by:后边支持单个字段、别名、表达式、函数或者多个字段
  • order by:放在查询语句的最后面,除了limit字句
  • asc代表升序,默认可以省略,desc代表降序

主要操作

1. 按单个字段排序

SELECT * FROM employees ORDER BY salary DESC;

2. 添加筛选条件再排序

#案例:查询部门编号>=90的员工信息,并按员工编号降序

SELECT 
  * 
FROM
  employees 
WHERE department_id >= 90 
ORDER BY employee_id DESC ;

3. 按表达式排序

#案例:查询员工信息 按年薪降序

SELECT 
  *,
  salary * 12 * (1 + IFNULL(commission_pct, 0)) 
FROM
  employees 
ORDER BY salary * 12 * (1 + IFNULL(commission_pct, 0)) DESC ;

4. 按别名排序

#案例:查询员工信息 按年薪升序
SELECT 
  *,
  salary * 12 * (1 + IFNULL(commission_pct, 0)) AS year_salary 
FROM
  employees 
ORDER BY year_salary ASC ;

5. 按函数排序

#案例:查询员工名,并且按名字的长度降序
SELECT 
  LENGTH(last_name),
  last_name 
FROM
  employees 
ORDER BY LENGTH(last_name) DESC ;

6. 按多个字段排序

#案例:查询员工信息,要求先按工资降序,再按employee_id升序
SELECT 
  * 
FROM
  employees 
ORDER BY salary DESC,
  employee_id ASC ;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值