表格的行转列

本文是引用网上一个大侠的,具体地址找不到了。
create table t (id int identity,name varchar(10),code int)

insert t values('人口',20)

insert t values('经济',12)

insert t values('文化',15)

insert t values('土地',45)

insert t values('土地',545)

declare @sql varchar(1000)

set @sql = ''

select @sql = @sql+name+'=sum(case when name='''+name+''' then code else 0 end),' from t group by name

print @sql

set @sql = left(@sql,len(@sql) - 1)

set @sql = 'select '+@sql+' from t'

exec (@sql)

drop table t
原文地址:https://www.cnblogs.com/hill/p/527260.html