题解 | 统计salary的累计和running_total

统计salary的累计和running_total

https://www.nowcoder.com/practice/58824cd644ea47d7b2b670c506a159a6

select emp_no,salary,sum(salary) over (order by emp_no) running_total
from salaries
where to_date = '9999-01-01'

1. 在许多数据库系统(如 PostgreSQL、MySQL 8.0+、SQL Server 等)中,如果在 SUM() 窗口函数中指定了 ORDER BY,但没有显式指定 ROWSRANGE 子句,那么默认行为通常是 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW。这意味着它会计算从第一行到当前行的累计值。

2.如果是SUM( ) OVER (PARTITION BY column)则代表是对窗口内或整个表(如果没有 PARTITION BY)的列求和

如果使用了 ORDER BY:SUM() 窗口函数会计算从分区的开始到当前行的累计值。

全部评论

相关推荐

10-29 15:51
嘉应学院 Java
后端转测开第一人:你把简历的学历改成北京交通大学 去海投1000份发现基本还是没面试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务