• 周六. 7月 2nd, 2022

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

关于存储过程分页的相关记录

admin

11月 28, 2021

前言

在我们日常的开发过程中,我们使用存储过程的频率非常高,特别是是数据的后端分页,

我们常常使用一个公用的存储过程,一次编译,’永久’使用。

分页存储过程

脚本如下:

CREATE PROCEDURE PRO_PAGE
@CONTIDION NVARCHAR(500), //条件 
@SORTBY    NVARCHAR(500), //排序字段
@PAGE      INT,           //当前页码数 
@LIMIT     INT,           //每页记录数
@TOTAL     INT OUTPUT     //输出参数
AS
BEGIN
  DECLARE @SQL1 NVARCHAR(MAX),@SQL2 NVARCHAR(MAX) //声明变量
  //赋值
  SET @SQL1='SELECT @TOTAL=COUNT(1) FROM TABLE1';
  SET @SQL2=';WITH TEMP AS
              (
                 SELECT TOP '[email protected]+',A.*,ROW_NUMBER() OVER('[email protected]+') AS NUM
                 FROM TABLE1 A '[email protected]+'
              )
              SELECT * FROM TEMP WHERE NUM>='[email protected] 
  //执行存储过程       
  EXEC sp_executesql @sqlCount, N'@TotalCount INT OUTPUT', @TotalCount OUTPUT
  EXEC(@SQL2) 
END    

发表评论

您的电子邮箱地址不会被公开。