总枢轴在SQL Server
问题描述:
我试试这个总枢轴在SQL Server
declare @t as table (yea int, rating varchar(100))
insert into @t
values (2012, 'US'), (2013, 'S'), (2014, 'G'),
(2015, 'E'), (2016, 'E')
--select * from @T
select
[2012], [2013], [2014], [2015], [2016]
from
(select rating
from @T) p
pivot
(max (rating)
for rating in ([2012], [2013], [2014], [2015], [2016])) as pb
,我得到了这样的结果:
2012 2013 2014 2015 2016
--------------------------------------
NULL NULL NULL NULL NULL
,但我真的很喜欢这样的结果,而不是:
2012 2013 2014 2015 2016
-------------------------------------
US S G E E
这是空数据,因为max(rating)
?如果是这样 - 我如何获得所需的数据?
答
你失踪啊(不知道是啊,是一个错字,所以我离开它是)
declare @t as table (yea int, rating varchar(100))
insert into @t values (2012,'US')
insert into @t values (2013,'S')
insert into @t values (2014,'G')
insert into @t values (2015,'E')
insert into @t values (2016,'E')
--select * from @T
select [2012],[2013],[2014],[2015],[2016]
from
(select yea,rating
from @T
) p
pivot
(max (rating) for yea in ([2012],[2013],[2014],[2015],[2016])) as pb
返回
2012 2013 2014 2015 2016
US S G E E