set rowcount 10--因为syscolumns的记录较,会导致生成的字符串溢出,所以限制一下行数declare @s nvarchar(4000)
set @s=''
select @s=@s+N','+quotename([name])
+N'=sum(case name when '+quotename([name],'''')
+N' then [colid] else 0 end)'
from(select distinct [name] from [syscolumns]) aset rowcount 0--取消限制
exec(N'select [xtype]'+@s+N' from [syscolumns] group by [xtype]')---这里面的quotename究竟是用来作什么用的?看了半天帮助也没有搞明白他的意途,
还有就是 这里面的N'是用来作什么的?