Oracle OVER (PARTITION BY ) 再汇总
时间: 2024-06-01 15:09:47 浏览: 73
Oracle表分区总结
Oracle中的OVER(PARTITION BY)用于对查询结果进行分组和汇总。
具体来说,OVER(PARTITION BY)语句将查询结果分成多个分组,每个分组内的数据都具有相同的分组键值。然后,可以在每个分组内进行聚合计算,例如求和、求平均值等。
以下是一个示例查询:
SELECT department, name, salary, AVG(salary) OVER (PARTITION BY department) as avg_salary
FROM employees;
在这个查询中,使用了OVER(PARTITION BY department)语句将查询结果按照department字段进行分组。然后,对每个分组内的salary字段进行平均值计算,并将结果存储在avg_salary字段中。
最终的查询结果将包含原始查询中的所有字段,以及新的avg_salary字段,其中包含每个部门的平均工资。
阅读全文