如何获得具有最大值和限制的不同列,蜂巢
How to get distinct column with max value and limit, hive
我有一个 table emp,大约有 10 行
empno,ename,dept,sal,deptno
现在我希望每个部门的结果都是 max sal。
EX:
12,ravi,manager,20000,10
43,hari,engineer,10000,20
32,sam,clerk,5000,30
获取每个部门的最高薪水,然后获取每个最高薪水的名称。
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
我有一个 table emp,大约有 10 行
empno,ename,dept,sal,deptno
现在我希望每个部门的结果都是 max sal。
EX:
12,ravi,manager,20000,10
43,hari,engineer,10000,20
32,sam,clerk,5000,30
获取每个部门的最高薪水,然后获取每个最高薪水的名称。
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