SQLserver簡單的豎向轉橫向



Declare @Sql Varchar(500)
Create Table #t(
  ID Varchar(20)
)
Set @Sql  = ''
Select @Sql = @Sql  + ' Alter Table #t Add Class_' + Cast(Item As Varchar(20)) + ' Varchar(20) Default ''0'''
  From YbInterface.dbo.B1
  Group By Item
Print @Sql
--Exec (@sql)

Set @Sql = @Sql +  ' Insert Into #t(ID) Select ID from YbInterface.dbo.B1 group by ID'
Print @Sql
Exec (@Sql)

Set @Sql = ''    ---這步很重要

Select @Sql = @Sql + ' Update A Set Class_' + Item + ' = B.Amount From #t A Inner Join YbInterface.dbo.B1 B On A.Id = B.ID And B.Item = ''' + Item + ''''
  From YbInterface.dbo.B1 A
  Group By Item
 
Print @Sql
Exec (@Sql)

select * from #t
drop table #t


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM