首页 > 数据库技术 > 详细

SQLSERVER行转列

时间:2015-10-16 20:19:24      阅读:323      评论:0      收藏:0      [点我收藏+]
create table test2(id int,name varchar(20),quarter char,profile1 int)
insert into test2 values(1,‘a‘,1,1000)
insert into test2 values(1,‘a‘,2,2000)
insert into test2 values(1,‘a‘,3,4000)
insert into test2 values(1,‘a‘,4,5000)
insert into test2 values(2,‘b‘,1,3000)
insert into test2 values(2,‘b‘,2,3500)
insert into test2 values(2,‘b‘,3,4200)
insert into test2 values(2,‘b‘,4,5500)
select * from test2
select id,name,
[1] as 一季度,
[2] as 二季度,
[3] as 三季度,
[4] as 四季度
from test2
pivot
(count([profile1])
for [quarter] in ([1],[2],[3],[4])
) pvt 
/*
id          name                 quarter profile1
----------- -------------------- ------- -----------
1           a                    1       1000
1           a                    2       2000
1           a                    3       4000
1           a                    4       5000
2           b                    1       3000
2           b                    2       3500
2           b                    3       4200
2           b                    4       5500
 
(8 行受影响)
 
id          name                 一季度         二季度         三季度         四季度
----------- -------------------- ----------- ----------- ----------- -----------
1           a                    1           1           1           1
2           b                    1           1           1           1
 
(2 行受影响)
*/

  

SQLSERVER行转列

原文:http://www.cnblogs.com/fxfly/p/4886036.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!