MySQL按分组排序
发布时间
阅读量:
阅读量
文章目录
- 引言
-
- 研究问题
-
一、采用group by方法
-
二、应用窗口函数
-
三、结合窗口函数与group by
-
结论
-
前言
此前曾遇到需要对分组后的数据进行排序的情况,现将相关经验进行整理记录。
问题
确定各职能部门中薪酬水平最高的员工
一、使用group by
示例代码:
select a.dept_no,a.name,a.salary
from (
select dept_no,name,salary
from employee
order by salary desc
limit 1000) a
group by a.dept_no
由于MySQL 5.6及以上版本对排序语句的解析机制进行了优化,子查询内部的排序操作将被系统自动忽略,因此原先用于排序的order by salary desc语句将无法正常发挥作用,为确保排序效果得以实现,必须借助limit语句进行限制。
二、使用窗口函数
select a.dept_no,a.n
全部评论 (0)
还没有任何评论哟~
