with t1 as(
select
部门编号,
姓名,
year(入职日期),
row_number()over(partition by 部门编号 order by 薪水排名 desc) as rk,
sum(薪资)over(partition by 部门编号) as 部门总薪资
from 表名)
select
*,
concat(round(薪资*100/部门总薪资,2),'%')as rate
from t1
where rk<=3;
with t1 as(
select
部门编号,
姓名,
year(入职日期),
row_number()over(partition by 部门编号 order by 薪水排名 desc) as rk,
sum(薪资)over(partition by 部门编号) as 部门总薪资
from 表名)
select
*,
concat(round(薪资*100/部门总薪资,2),'%')as rate
from t1
where rk<=3;