zoukankan      html  css  js  c++  java
  • 超棒的存储过程分页写法

    --Question获取所有列表(分页、排序)

     ---创建存储过程

     CREATE PROCEDURE [dbo].[Pr_Question_GetPagedListAll]  

                 @StartRowIndex int, --起始记录号  

                 @MaximumRows int, --记录数   

                 @SortExpression varchar(1000) --排序字段

     AS BEGIN  --@SortExpression参数:请根据实际查询需要进行默认值设定

     SET NOCOUNT ON    

     ---声明查询语句、总行数、临时表

     DECLARE @SqlGet varchar(1600)  

     DECLARE @TotalRecords int    //创建表变量(总行数)

     CREATE TABLE #PageIndex    //创建临时表,存储数据主键 

      (   

           [IndexId] int IDENTITY (0, 1) NOT NULL,   

           [QuestionId] Int  

     )    

     ---设置排序条件

    IF @SortExpression IS NULL --OR (@SortExpression = '')     //获取排序条件

           SET @SortExpression = '' --请在此处设置默认值(同时启用上一行后半部分的判断)    

    IF @SortExpression <> ''   

            SET @SortExpression = ' ORDER BY ' + @SortExpression    

     ---执行查询语句,设置表和总行数

    SET @SqlGet = 'SELECT [QuestionId] FROM [dbo].[Question]  ' + @SortExpression    INSERT INTO #PageIndex  (   [QuestionId]  ) EXEC (@SqlGet)    

    SET @TotalRecords = @@ROWCOUNT    //设置总行数

     ---根据分页值查询Question表对应数据

    SELECT   biz.[QuestionId],  

                  biz.[Title],   

                  biz...  

    FROM [dbo].[Question] biz, #PageIndex p  

    WHERE   biz.[DraftQuestionId] = p.[DraftQuestionId] AND   

                  p.IndexId >= @StartRowIndex AND   p.IndexId < @StartRowIndex + @MaximumRows  

    ORDER BY p.IndexId       //将表组合进行查询,并分页

     ---关闭计数器并返回变量值

    SET NOCOUNT OFF         //将计数器开关关闭

    RETURN @TotalRecords  //设置返回总行数

    END

    GO

  • 相关阅读:
    Bzoj 1878: [SDOI2009]HH的项链 莫队
    BZOJ 2140: 稳定婚姻 Tarjan Map
    Bzoj 2190 : [SDOI2008]仪仗队 数论 特判
    bzoj 16801740 : [Usaco2005 Mar]Yogurt factory 贪心 双倍经验
    BZOJ 5387: [Lydsy1806月赛]质数拆分
    BZOJ 1379: [Baltic2001]Postman 水题
    Bzoj : 1823: [JSOI2010]满汉全席
    4952: [Wf2017]Need for Speed 二分
    BZOJ 2301: [HAOI2011]Problem b 2045: 双亲数 同BZOJ 1101 Zap 莫比乌斯反演 3倍经验
    BZOJ 1030: [JSOI2007]文本生成器 AC自动机
  • 原文地址:https://www.cnblogs.com/BeyondWJsel/p/2343708.html
Copyright © 2011-2022 走看看