CREATE PROCEDURE TESS222 @num int =1 AS
   SELECT TOP 10*@num id FROM [内容表] ORDER BY 发布时间 DESC
GO请教这句像存储过程应该怎么写?请大家帮忙,谢谢!

解决方案 »

  1.   

    CREATE PROCEDURE TESS222 @num int =1 
    AS
    declare @sql varchar(2000)
    set @sql = 'SELECT TOP ' + rtrim(10*@num) + ' id FROM [内容表] ORDER BY 发布时间 DESC'
    EXEC(@sql)
    GO
      

  2.   

    CREATE PROCEDURE TESS222 @num int =1 AS
       exec('SELECT TOP '+10*@num+' id FROM [内容表] ORDER BY 发布时间 DESC')
    GO
      

  3.   

    CREATE PROCEDURE TESS222 @num int =1 
    AS
    declare @sql varchar(2000)
    set @sql =N'SELECT Top 10*'+@num+' id FROM [内容表] ORDER BY 发布时间 DESC'
    EXEC(@sql)
    GO
      

  4.   

    CREATE PROCEDURE TESS222
        @num int =1 
    AS
        DECLARE @SQL NVARCHAR
        SET @SQL=CAST(10*@NUM AS NVARCHAR)    EXEC(N'SELECT TOP ' + @SQL + ' id FROM [内容表] ORDER BY 发布时间 DESC')
    GO
      

  5.   

    同意helloworld      的