declare @s varchar(8000)
set @s=''
select @s=@s+',['+用户名+']=sum(case 用户名 when '''+用户名+''' then 1 else 0 end)'
from 表1
gorup by 用户名
exec('select 状态'+@s+' from 表2 group by 状态')

解决方案 »

  1.   

    表一叫HGC_LoginIn , 其中有一个字段是lo_uid表示用户名表二叫HGC_Main , 其中HGC_Tno表示序列号, Call_Result表示状态 , User_Assign表示用户名(此字段和表一的lo_uid对应)
      

  2.   

    搞定了,是我搞错了但select @s=@s+',['+用户名+']=sum(case 用户名 when '''+用户名+''' then 1 else 0 end)'
     
    这一句是什么意思呢,能不能解释一下,十分谢谢,麻烦你了我一定加分, 好吗?
      

  3.   

    生成一个处理的SQL语句你将结果print(@s) 看能否看明白