Hive 检索配置单元中的第三个最大薪资
我是个新手。我有下面的Employee表Hive 检索配置单元中的第三个最大薪资,hive,hiveql,Hive,Hiveql,我是个新手。我有下面的Employee表 ID Name Country Salary ManagerID 我使用以下命令获取了第三个最高工资 select name , salary From ( select name, salary from employee sort by salary desc limit 3) result sort by salary limit 1; 如何同样显示每个国家的第三最高工资?我们可以使用OVER(按国家划分)吗?
ID Name Country Salary ManagerID
我使用以下命令获取了第三个最高工资
select name , salary From (
select name, salary from
employee sort by salary desc limit 3)
result sort by salary limit 1;
如何同样显示每个国家的第三最高工资?我们可以使用OVER(
按国家划分
)吗?我试着在语言手动窗口和分析中寻找,但我发现很难理解。请帮忙 使用窗口功能,您肯定走对了方向row_number()
是一个很好的函数
select name, salary
from (
select name
, salary
, row_number() over (partition by country order by salary desc) idx
from employee ) x
where idx = 3
按薪资排序时,请确保它是数字类型,否则将无法正确排序。谢谢,伙计!谢谢!:)