--用动态SQL
declare @sql varchar(200)
set @sql=''
select @sql=@sql+name+',' from syscolumns  where id=object_id('你的表名') 
set @sql=left(@sql,len(@sql)-1)
exec ('select ' + @sql + ' from 你的表名')

解决方案 »

  1.   

    exec('select '+@fieldname+' from table')
      

  2.   

    exec('select ' + @fieldname + ' from tablename')
      

  3.   

    我想进一步的把exec('select '+@fieldname+' from table')的值赋给一个变量,但无论在EXEC内和外声明,都不能把值传递出来,请问怎样才能实现:
    @value=exec('select ' + @fieldname+ ' as bm from biaozhun where wd= 30')???
    谢谢!
      

  4.   

    declare @value 数据类型declare @s nvarchar(4000)
    set @s='select @value=' + @fieldname+ ' from biaozhun where wd= 30'
    exec sp_executesql @s,N'@value 数据类型 output',@value output
    select 结果=@value