MySQL排序查询

排序查询

在实际应用中,经常都需要按照某个字段都某种排序都结果,实现语法:

sql 复制代码
select 查询列表 from 表 where 条件 order by 排序字段列表 asc | desc;

案例:查询所有员工信息,要求工资从大到小排列

sql 复制代码
select * from employees order by salary desc; // desc:降序,asc:升序

反过来从小到大排列

sql 复制代码
select * from employees order by salary asc; // asc:是可以省略

案例加上条件oreder by语句是放在条件语句后面的,

查询部门编号大于等于90的员工信息,按照入职时间的先后排序

sql 复制代码
select * from employees where department_id>=90 order by hiredate asc;

案例实现按表达式排序,按年薪的高低显示员工信息

sql 复制代码
select *,salary*12*(1+isnull(commission_pct,0)) as 年薪 from employees oreder by salary*12*(1+isnull(commission_pct,0)) desc;

-----oreder by salary*12*(1+isnull(commission_pct,0)) 太长!可以用别名替代:
-----oreder by 年薪 也是可以的!

案例使用函数来排序,按姓名的长度显示员工信息

sql 复制代码
select *,length(last_name) as 姓名的长度 from employees order by length(last_name) desc;

案例实现多字段排序,查询员工信息,首先用工资高低排序,工资一样的在按员工id大到小排序

sql 复制代码
select * from employees order by salary desc , employee_id desc;
相关推荐
Brookty4 分钟前
【MySQL】JDBC编程
java·数据库·后端·学习·mysql·jdbc
_代号0077 分钟前
MySQL梳理一:整体架构概览
后端·mysql
先做个垃圾出来………39 分钟前
SQL的底层逻辑解析
数据库·sql
码不停蹄的玄黓1 小时前
深入拆解MySQL InnoDB可重复读(RR)隔离级别:MVCC+临键锁如何「锁」住一致性?
数据库·mysql·可重复读
paopaokaka_luck1 小时前
基于SpringBoot+Vue的酒类仓储管理系统
数据库·vue.js·spring boot·后端·小程序
用户91453633083911 小时前
MySQL查询执行顺序:一张图看懂SQL是如何工作的
mysql
Lx3522 小时前
MySQL物化视图:预计算查询结果的定期刷新
sql·mysql·性能优化
Lx3522 小时前
Mysql死锁日志分析:事务逻辑冲突的排查技巧
sql·mysql·性能优化
薛晓刚2 小时前
哪个领域数据库最难替换?
数据库
RainbowSea2 小时前
14. MySQL 锁的详细说明
java·sql·mysql