如何获得具有最大值和限制的不同列,蜂巢



我有一个大约 10 行的表格 emp

empno,ename,dept,sal,deptno

现在我希望结果作为每个部门作为最大萨尔的 ename。

前任:

12,ravi,manager,20000,10
43,hari,engineer,10000,20
32,sam,clerk,5000,30

获取每个部门的最高工资,然后获取每个最高工资的ename。

select ename,dept,sal
from emp
where sal in (select max(sal) as sal from emp group by dept)

使用row_number()partition

select * from 
(
   select ename,dept,sal, row_number() over (partition by dept order by sal desc) as row_no
   from emp
) res 
where res.row_no = 1

最新更新