参考:
create table #(a varchar(100),b int)
insert # values('aa',11)
insert # values('bb',1)
insert # values('aa',45)
insert # values('cc',81)
insert # values('a',11)
insert # values('aay',561)
insert # values('a',14)declare @sql varchar(8000)
set @sql = 'select '
select @sql = @sql + 'sum(case a when '''+a+'''
then b else 0 end) '+a+'的数量,'
from (select distinct a from #) as aselect @sql = left(@sql,len(@sql)-1) + ' from #'exec(@sql)drop table #
create table #(a varchar(100),b int)
insert # values('aa',11)
insert # values('bb',1)
insert # values('aa',45)
insert # values('cc',81)
insert # values('a',11)
insert # values('aay',561)
insert # values('a',14)declare @sql varchar(8000)
set @sql = 'select '
select @sql = @sql + 'sum(case a when '''+a+'''
then b else 0 end) '+a+'的数量,'
from (select distinct a from #) as aselect @sql = left(@sql,len(@sql)-1) + ' from #'exec(@sql)drop table #
set @s = ''
select @s = @s + cast(s as char(3)) from 表
select @s
set @s = ''
select @s = @s + cast(s as varchar(10)) + replicate(' ',5) from 表
select @s
----------
1
2
3
4
5
6
7
8
变成
1 2 3 4 5 6 7 8
-----------------------------
或 s1 s2 s3 s4 s5 s6 s7 s8
-----------------------------
1 2 3 4 5 6 7 8
declare @str varchar(8000)
set @str= ''
select @str = @str + 's' + convert(varchar,s) + space(1) from tableName
select @str