求大神帮忙写一下行列转换有关问题
求大神帮忙写一下行列转换问题
表测试数据如下:
create table pivottable
(月份 nvarchar(10),项目一 int,项目二 int)
insert into pivottable values
('一月',2,1),('二月',1,1),('三月',2,1),('四月',3,1),('五月',1,3),('六月',2,3),
('七月',1,3),('八月',1,2),('九月',2,1),
('十月',3,1),('十一月',2,3),('十二月',1,1)
转换后如图
------解决思路----------------------
;with tb as
(
select 月份,项目一 as 数值,'项目一' 项目 from pivottable
union all
select 月份,项目二 as 数值,'项目二' 项目 from pivottable
)
select * from tb p pivot(sum(数值) for 月份 in(一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月)) t
表测试数据如下:
create table pivottable
(月份 nvarchar(10),项目一 int,项目二 int)
insert into pivottable values
('一月',2,1),('二月',1,1),('三月',2,1),('四月',3,1),('五月',1,3),('六月',2,3),
('七月',1,3),('八月',1,2),('九月',2,1),
('十月',3,1),('十一月',2,3),('十二月',1,1)
转换后如图
------解决思路----------------------
;with tb as
(
select 月份,项目一 as 数值,'项目一' 项目 from pivottable
union all
select 月份,项目二 as 数值,'项目二' 项目 from pivottable
)
select * from tb p pivot(sum(数值) for 月份 in(一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月)) t