sql oracle查询-按计算和列排序
朋友 在Oracle中,有没有一种方法可以在desc中按和排序 因此,基本上在下面的输出我想要一个页面,其中有最大的工资计数。。。i、 e.第一个结果应显示58000、27500、13000的所有详细信息sql oracle查询-按计算和列排序,sql,oracle,Sql,Oracle,朋友 在Oracle中,有没有一种方法可以在desc中按和排序 因此,基本上在下面的输出我想要一个页面,其中有最大的工资计数。。。i、 e.第一个结果应显示58000、27500、13000的所有详细信息 BREAK on DEPARTMENT_ID page nodup on JOB_ID skip 1 nodup COMPUTE SUM OF SALARY ON DEPARTMENT_ID / 希望我能解释清楚。。 谢谢 更符合您的散文而非代码,但如果您为聚合提供别名,
BREAK on DEPARTMENT_ID page nodup
on JOB_ID skip 1 nodup
COMPUTE SUM OF SALARY ON DEPARTMENT_ID
/
希望我能解释清楚。。
谢谢 更符合您的散文而非代码,但如果您为聚合提供别名,则可以按别名排序
select somefield, sum(something) total
from whereever
where whatever
group by somefield
order by total desc
让我们先找出某个部门工资的
SUM()
,并将其附加到您的常规列中,从而进行分析。。按降序排序,我们就完成了
您仍然可以使用sql*plus
报告
SELECT DEPARTMENT_ID,
JOB_ID,
LAST_NAME,
SALARY,
SUM(SALARY) OVER (PARTITION BY DEPARTMENT_ID ORDER BY NULL) as CUMULATIVE_SUM
FROM EMPLOYEE
ORDER BY CUMULATIVE_SUM DESC,DEPARTMENT_ID;
要从选择中删除
ORDER BY SUM(SALARY) OVER (PARTITION BY DEPARTMENT_ID ORDER BY NULL) DESC,DEPARTMENT_ID
Oracleuser…不,这将产生错误-没有一个组函数Oracleuser这是一个好主意,我正在测试它,但如何不在报告中列出该累计列?t将累计总和按顺序替换为整个sum()行。。从select中删除它,我希望它能正常工作。
ORDER BY SUM(SALARY) OVER (PARTITION BY DEPARTMENT_ID ORDER BY NULL) DESC,DEPARTMENT_ID