首页 > 解决方案 > 如何从100中获得百分比的薪水

问题描述

我正在使用 sql developer,我想:

怎么做 ?

select name ,sal from(
select last_name name,salary sal from employees e
where  rownum <=5 
)

希望输出为:

在此处输入图像描述

标签: sqloraclesumwindow-functions

解决方案


您可以使用 来执行此操作grouping set,但这有点棘手:

select name, salary, salary / max(salary) over ()
from t
group by grouping sets ((name, salary) ());

诀窍是窗口函数是在 之后计算的grouping sets,因此它包括总数。因此使用max(salary)代替sum(salary)


推荐阅读