MySQL排序查询——笔记

导读:本篇文章讲解 MySQL排序查询——笔记,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

MySQL排序查询

一、排序查询概论

所谓排序查询,也就是在查询完显示查询结果后,查询结果会以某一个字段的属性排序所得的顺序进行展示,这就是排序查询。

排序查询的语法:

select 查询列表
from 表
【where 筛选条件】
order by 排序列表 【asc / desc】

排序查询的特点:

  1. 不写asc或者desc,默认升序
  2. asc:升序,从低到高
  3. desc:降序,从高到低
  4. order by 子句中可以直接单个字段、多个字段、表达式、函数、别名
  5. order by 子句一般是放在查询语句的最后面,limit语句除外

二、案例展示

# 案例1:查询员工信息,要求工资从高到低排序

SELECT *
FROM `employees`
ORDER BY `salary`;

# 案例2:查询部门编号>=90的员工信息,按照入职时间的先后进行排序

SELECT *
FROM `employees`
WHERE `department_id` >= 90
ORDER BY `hiredate`;

# 案例3:按年薪的高低显示员工的信息和年薪【按表达式排序】

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

# 案例4:按年薪的高低显示员工的信息和年薪【按别名排序】

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

# 案例5:按姓名的长度显示员工的姓名和工资【按函数排序】
# 在这个案例中会用到一个函数length(),其返回值是返回当前字符串的长度

SELECT `last_name` 姓名, LENGTH(`last_name`) 姓名长度, `salary` 工资
FROM `employees`
ORDER BY 姓名长度 DESC;

# 案例6:查询员工信息,要求先按工资排序,再按员工编号排序【按多个字段排序,先按谁排序,就先写谁在前】

SELECT *
FROM `employees`
ORDER BY `salary` DESC, `employee_id` DESC;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/95029.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!