declare @q int
set @q=10
set rowcount @q
select * from filelist

解决方案 »

  1.   

    --或者改用下面的,总之不能直接用变量:declare @q int
    set @q=10declare @s varchar(1000)
    set @s='select top '+cast(@q as varchar)+' * from filelist'
    exec(@s)
      

  2.   

    declare @n int
    set @n=1
    exec('select top '+ @n+' * from tableName ')
      

  3.   

    我今天也遇到这问题,正想提问呢!
    我的是随机抽取某一条记录(无数值字段),估计需要楼上的动态sql方法。