sql 计算年累计

最近做数据模型时发现一个需要计算数据本年累计的一个需求,下面记录下:
如下图,需要计算每个人的本年累计和。


原始数据

这时候可以利用sql的一个分析函数来实现累计数据分析。
分析函数:sum(XX) over (partition by country order by date) 这个函数的意思是指: 对XX这个指标在country的分组,并且在date的顺序进行做累计数据计算。
例如用上面的原始数据写个sql:

select id,date,name,value,sum(value) over (partition by substr(date,1,4),name order by date) as sumValue from table

执行这条语句的结果如下:



这样就实现了累计的效果!!

你可能感兴趣的:(sql 计算年累计)