天高任鸟飞

博客园 首页 联系 订阅 管理
  create   table   tb(用户ID   varchar(10),姓名   varchar(10),地址   varchar(10))   
  
insert   tb   select   '1','张三','浙江'   
  
insert   tb   select   '2','李四','湖南'   
  
insert   tb   select   '3','王五','广东'   
  
--转换后的表   
  create   table   tbl([序号]   int,[属性名]   varchar(10),[]   varchar(10))   
  
--查询   
  declare   @add   varchar(10)   
  
declare   @name   varchar(10)   
  
declare   @id   varchar(10)   
  
declare   @col   varchar(10)   
  
declare   cur   cursor   for   select   name   from   syscolumns   where   id=object_id('tb')   
  
open   cur   
  
fetch   next   from   cur   into   @col   
  
while   @@fetch_status=0     
  
begin   
          
exec('insert   tbl   select   (select   count(*)   from   tb   where   用户ID>a.用户ID)   as   ''序号'','''+@col+''','+@col+'   from   tb   a')   
          
fetch   next   from   cur   into   @col   
  
end   
  
close   cur   
  
deallocate   cur   
  
go   
  
select   *   from   tbl   order   by   序号,属性名   desc   
  
go   
  
--删除测试数据   
  drop   table   tb   
  
drop   table   tbl