首页 新闻 会员 周边

sql server 中如何查询每年月销售数量(求大神指教)

0
悬赏园豆:50 [已解决问题] 解决于 2014-04-23 16:57

表名:table 表数据如下:

year month number

1990 1 100
1990 2 200
1990 3 300
1991 1 223
1991 2 221
1991 3 123

查询结果 查看每年的月销售数量

年份 一月 二月 三月
1990 100 200 300
1991 223 221 123

情义之印的主页 情义之印 | 初学一级 | 园豆:15
提问于:2014-04-23 00:09
< >
分享
最佳答案
0

select [year],

Sum(case when [month]=1 then qty else 0 end)  as '一月' ,

Sum(case when [month]=2 then qty else 0 end)  as '二月' ,

Sum(case when [month]=3 then qty else 0 end)  as '三月'

from test

group by [year]

收获园豆:41
xgdw | 初学一级 |园豆:4 | 2014-04-23 16:34

Sum(case when [month]=1 then qty else 0 end)  as '一月' ,

大神,  这里面的 qty 是什么?

情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:55

@情义之印: 改成,number ,手误打错了

xgdw | 园豆:4 (初学一级) | 2014-04-23 16:56

@Smok: 谢了 

情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:59
其他回答(3)
0

SQL 的行转列,应该可以~

收获园豆:3
kuroro | 园豆:157 (初学一级) | 2014-04-23 08:24

大神,你好,可以来电实例代码吗  先谢谢你了 

支持(0) 反对(0) 情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:18
0

select sum(number) from table where datediff(year,'1990-01-01','1990-12-31')=0

select sum(number) from table where datediff(month,'1990-01-01','1990-12-31')>0

收获园豆:3
wolfy | 园豆:2636 (老鸟四级) | 2014-04-23 09:58

大神你好,这是什么意思,可以具体说明一下吗 或者 来个直接答案也行

支持(0) 反对(0) 情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:03

表名:table 表数据如下:

year month number

1990 1 100
1990 2 200
1990 3 300
1991 1 223
1991 2 221
1991 3 123

查询结果 查看每年的月销售数量

年份 一月 二月 三月
1990 100 200 300
1991 223 221 123

 

这个是查每个月的销售量,不需要和啊

 

支持(0) 反对(0) 情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:18
0

你自己找本SQL基础书看看吧

是最基础的了,看书知识点学的比较全面!

收获园豆:3
Albert Fei | 园豆:2102 (老鸟四级) | 2014-04-23 14:25

书我正在看,只是还没解决呢 

支持(0) 反对(0) 情义之印 | 园豆:15 (初学一级) | 2014-04-23 16:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册