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;
相关推荐
小张程序人生15 小时前
ShardingJDBC读写分离详解与实战
数据库
木风小助理15 小时前
三大删除命令:MySQL 核心用法解析
数据库·oracle
tc&15 小时前
redis_cmd 内置防注入功能的原理与验证
数据库·redis·bootstrap
麦聪聊数据15 小时前
MySQL 性能调优:从EXPLAIN到JSON索引优化
数据库·sql·mysql·安全·json
Facechat16 小时前
视频混剪-时间轴设计
java·数据库·缓存
lalala_lulu16 小时前
MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?(超详细版)
数据库·mysql
曹牧16 小时前
Oracle:大量数据删除
数据库·oracle
小四的快乐生活16 小时前
大数据SQL诊断(采集、分析、优化方案)
大数据·数据库·sql
CV工程师的自我修养16 小时前
你的SQL为什么慢?看懂MySQL EXPLAIN执行计划,快速定位性能瓶颈
数据库·mysql
一壶纱16 小时前
UniApp + Pinia 数据持久化
前端·数据库·uni-app