参考:
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 #

解决方案 »

  1.   

    declare @s varchar(1000)
    set @s = ''
    select @s = @s + cast(s as char(3)) from 表
    select @s
      

  2.   

    declare @s varchar(8000)
    set @s = ''
    select @s = @s + cast(s as varchar(10)) + replicate(' ',5) from 表
    select @s
      

  3.   

    如表 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