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;
相关推荐
SunflowerCoder16 分钟前
EF Core + PostgreSQL 配置表设计踩坑记录:从 23505 到 ChangeTracker 冲突
数据库·postgresql·c#·efcore
短剑重铸之日24 分钟前
《7天学会Redis》Day2 - 深入Redis数据结构与底层实现
数据结构·数据库·redis·后端
Zoey的笔记本1 小时前
「支持ISO27001的GTD协作平台」数据生命周期管理方案与加密通信协议
java·前端·数据库
什么都不会的Tristan2 小时前
MybatisPlus-扩展功能
数据库·mysql
超级种码2 小时前
Redis:Redis 数据类型
数据库·redis·缓存
chirrupy_hamal2 小时前
PostgreSQL 中的“脏页(Dirty Pages)”是什么?
数据库·postgresql
陈天伟教授3 小时前
关系数据库-07. 关系操作
数据库·达梦数据库·国产数据库
zzhongcy3 小时前
复合索引 (item1, item2, item3 ) > (?, ?, ?) 不起作用,EXPLAIN 后type=ALL(全表扫描)
android·数据库
Elastic 中国社区官方博客3 小时前
Elastic:DevRel 通讯 — 2026 年 1 月
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
可观测性用观测云3 小时前
AWS RDS 可观测性最佳实践
数据库