select top 9 * from 表
exec('select top '+@变量+' * from 表')

解决方案 »

  1.   

    select top count(主鍵)-1 * from 表
      

  2.   

    "select top count(主 )-1 * from 表“运行出错!
      

  3.   

    CREATE PROCEDURE ttl
    As
    declear @y1 numeric(9)
    select @y1=count(*) from table
    Set @y1=@y1-1
    select top @y1 * from table    /* 為什麼這句有錯 */
    go
      

  4.   

    declare @count int
    declare @sql varchar(8000)
    select @count=count(*)-1 from table
    set @sql='select top '+cast(@count as varchar) 
    select @sql=@sql+ ' * from table'
    exec (@sql)
    go
      

  5.   

    to:tky111(譚開雲) 
    CREATE PROCEDURE ttl
    As
    declear @y1 numeric(9)
    select @y1=count(*) from table
    Set @y1=@y1-1
    select top @y1 * from table    /* 為什麼這句有錯 */
    改成:exec 'select top '+@y1+' * from table'
    go
      

  6.   

    declare @count int
    declare @sql varchar(8000)
    select @count=count(*)-1 from table
    set @sql='select top '+cast(@count as varchar) 
    select @sql=@sql+ ' * from table'
    exec (@sql)
    go
    支持小马
      

  7.   

    declare @a varchar(8000)set @a='select top '+cast((select count(*) from 表) as varchar)+' * from 表'exec(@a)