使用一条SQL计算每天的结果值和累计结果值?

 

我们在数据开发中往往会遇到一些需求需要计算每天的量和累积的量是多少?

那这个时候很多人都觉得不是一个维度的 是否可以这样求?

这个需求其实是想看趋势和累计的关系, 是有很多业务含义的.

这里提供2个方法

前提: 这里有一张表a 是每天的注册人数
日期 商品名称 销量

方法一

select 日期, 商品名称, 当日销量, 累计销量 from (select 日期, 商品名称 , sum(销量) from a group by 日期, 商品名称 ) b left join

(select 日期, 商品名称, sum(销量) as 累计销量 from b where 日期<=a.日期) c

方法2:

select *,(select sum(产量) from a where 商品名称=a.商品名称 and 日期<=a.日期) as 累计销量 from 表 as a


欢迎投稿 职场/创业方向. 邮箱wangfzcom(AT)163.com:王夫子社区 » 使用一条SQL计算每天的结果值和累计结果值?