
sql server 2005 中如何根据年份得到各个月的总收入与总支出,并得到各个月的利润
sqlserver2005中如何根据输入年份分别得到输入年份的各个月的收入与支出,并得到各个月的利润表结构为:recordid,rmoney(金额),rtime(时间),...
sql server 2005 中如何根据 输入年份 分别得到输入年份的各个月的收入与支出,并得到各个月的利润
表结构为: recordid , rmoney(金额) ,rtime(时间),iscost(收入/支出) 有些月份可能没有收入或者支出(意思就是通过这个表能得到输入年份的 各个月的,月收入,月支出,月利润),怎么做啊?求高手解决
邮箱?? 展开
表结构为: recordid , rmoney(金额) ,rtime(时间),iscost(收入/支出) 有些月份可能没有收入或者支出(意思就是通过这个表能得到输入年份的 各个月的,月收入,月支出,月利润),怎么做啊?求高手解决
邮箱?? 展开
1个回答
展开全部
如果没有就算作0就可以了。 比如本月'201011'如下
select 月份=convert(varchar(6),rtime,112),月收入=sum(case when iscost='收入' then rmoney else 0 end,月支出=sum(case when iscost='支出' then rmoney else 0 end,月利润=sum(rmoney) from 表 where convert(varchar(6),rtime,112)='201011' group by convert(varchar(6),rtime,112)
本年'2010'如下
select 月份=convert(varchar(6),rtime,112),月收入=sum(case when iscost='收入' then rmoney else 0 end,月支出=sum(case when iscost='支出' then rmoney else 0 end,月利润=sum(rmoney) from 表 where year(rtime)=2010 group by convert(varchar(6),rtime,112)
select 月份=convert(varchar(6),rtime,112),月收入=sum(case when iscost='收入' then rmoney else 0 end,月支出=sum(case when iscost='支出' then rmoney else 0 end,月利润=sum(rmoney) from 表 where convert(varchar(6),rtime,112)='201011' group by convert(varchar(6),rtime,112)
本年'2010'如下
select 月份=convert(varchar(6),rtime,112),月收入=sum(case when iscost='收入' then rmoney else 0 end,月支出=sum(case when iscost='支出' then rmoney else 0 end,月利润=sum(rmoney) from 表 where year(rtime)=2010 group by convert(varchar(6),rtime,112)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询