我正在使用产生旋转结果的 select 语句将数据复制到临时表。
我的程序是:
alter procedure proc11 AS
create Table #Temp (Software varchar(max), Ver varchar(max))
declare @cols varchar(max)
declare @colTabl varchar(max)
declare @alter varchar(max)
set @cols=STUFF((select distinct ',[' + Ltrim(rtrim(YEAR(Dt))) +']' from temp FOR XML PATH('')),1,1,'');
set @colTabl=STUFF((select distinct '[' + Ltrim(rtrim(YEAR(Dt))) +'] int,' from temp FOR XML PATH('')),1,0,'');
set @colTabl= LEFT(@colTabl,len(@colTabl)-1);
set @alter = 'alter table #Temp add '+ @colTabl;
exec(@alter)
EXEC('select * into #Temp from
(select YEAR(Dt)[year],Software,Ver from temp)T
Pivot(count([year]) for [year] in ('+@cols+'))PVT')
但是该语句select * from #Temp
没有返回任何记录。
我如何复制这些记录。
请帮忙。提前致谢。