
sql 获取每月当前的年度总销售额
假设有一张销售表:月份销售额2011/0110002011/0220002011/0312002011/0424002011/0510002011/0620002011/...
假设有一张销售表:
月份 销售额
2011/01 1000
2011/02 2000
2011/03 1200
2011/04 2400
2011/05 1000
2011/06 2000
2011/07 1000
2011/08 2000
... ...
现在我想就用一个sql语句就能select出如下的结果.
月份 当月年度总销售额
2011/01 1000
2011/02 3000 (就是1,2月销售总和)
2011/03 4200 (就是1,2,3月销售总和)
2011/04 6600 (就是1,2,3,4月销售总和)
2011/05 7600 (以此类推)
2011/06 9600
2011/07 10600
2011/08 12600
... ...
不知道这个该怎么实现.
注意,这不是用分步统计每个月当月年度总销售额,然后把它合并在一起!
而是最好能用sql语句一步或者两步到位select出想要的结果! 展开
月份 销售额
2011/01 1000
2011/02 2000
2011/03 1200
2011/04 2400
2011/05 1000
2011/06 2000
2011/07 1000
2011/08 2000
... ...
现在我想就用一个sql语句就能select出如下的结果.
月份 当月年度总销售额
2011/01 1000
2011/02 3000 (就是1,2月销售总和)
2011/03 4200 (就是1,2,3月销售总和)
2011/04 6600 (就是1,2,3,4月销售总和)
2011/05 7600 (以此类推)
2011/06 9600
2011/07 10600
2011/08 12600
... ...
不知道这个该怎么实现.
注意,这不是用分步统计每个月当月年度总销售额,然后把它合并在一起!
而是最好能用sql语句一步或者两步到位select出想要的结果! 展开
2个回答
展开全部
一年就12个月,你拼一下Sql语句就行了。
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/01'
union
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/02'
union
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/03'
....
使用的时候年份用参数传进去就行了。
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/01'
union
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/02'
union
select max(月份),sum(销售额) from 销售表 where 月份 <= '2011/03'
....
使用的时候年份用参数传进去就行了。
追问
这方法不错,不知道还有没有其他方法!
如果数据量一多,就显得有点麻烦了.
假设啊,仅仅是假设统计一年的数据,按照天来统计.那不可能写360多行吧.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询