SQL Server OFFSET 分页存储过程

--参数值
SET @sqlquert=N'SELECT  *
FROM    dbo.tbCOM_Job
ORDER BY Job_ID ';--这里一定得加Order By
SET @CurrentPage=2;
SET @PageSize=5;CREATE PROC  PageTest
(
@sqlquert NVARCHAR(MAX),--查询的数据源sql
@CurrentPage INT,--当前页2
@PageSize INT --每页5条
)
AS
BEGIN
DECLARE @Pagequery AS NVARCHAR(MAX);--最终查询sql
SET @Pagequery = N'SELECT * FROM
('+@sqlquert+'
OFFSET (' + CONVERT(VARCHAR(20), @PageSize) + '*('+ CONVERT(VARCHAR(20), @CurrentPage) + '-1)) ' + 'ROW FETCH NEXT '+ CONVERT(VARCHAR(20), @PageSize) + ' ROWS ONLY
) PageDate';
PRINT @Pagequery;
EXECUTE(@Pagequery);
END;
  • 普通sql
--参数
DECLARE @sqlquert AS NVARCHAR(MAX);--查询的数据源sql
DECLARE @CurrentPage AS INT;--当前页2
DECLARE @PageSize AS INT;--每页5条
DECLARE @Pagequery AS NVARCHAR(MAX);--最终查询sql--第一种
SELECT *
FROM dbo.T
ORDER BY ID --这里一定得加Order By
OFFSET (@PageSize * (@CurrentPage - 1)) ROW FETCH NEXT @PageSize ROWS ONLY;--第二种
SET @sqlquert=N'SELECT  *
FROM    dbo.tbCOM_Job
ORDER BY Job_ID ';--这里一定得加Order By
SET @CurrentPage=2;
SET @PageSize=5;
SET @Pagequery = N'SELECT * FROM
('+@sqlquert+'
OFFSET (' + CONVERT(VARCHAR(20), @PageSize) + '*('+ CONVERT(VARCHAR(20), @CurrentPage) + '-1)) ' + 'ROW FETCH NEXT '+ CONVERT(VARCHAR(20), @PageSize) + ' ROWS ONLY
) PageDate';
PRINT @Pagequery;
EXECUTE(@Pagequery);

SQL Server OFFSET 分页存储过程相关推荐

  1. SQL SERVER 通用分页存储过程

    SQL SERVER 通用分页存储过程 从SQLSERVER 2005开始,提供了Row_Number()函数,利用函数生成的Index来处理分页,按照正常的逻辑思维都是传pageIndex和page ...

  2. Sql Server通用分页存储过程

    sql server2000分页方式很多,效率吗  当到达10万级以上就有些吃力了,这里暂时不例出来了 sql server2005以上就有了row_number 也是一大进步,详情如下参考 Sql ...

  3. sql server 2005分页存储过程和sql server 2000分页存储过程(摘)

    USE [svnhost] GO /****** 对象:  StoredProcedure [dbo].[up_Page2005]    脚本日期: 05/21/2008 11:27:05 ***** ...

  4. 在SQL Server中分页结果的最佳方法是什么

    如果您还希望获得结果总数(在进行分页之前),那么在SQL Server 2000.2005.2008.2012中对结果进行分页的最佳方法是(性能明智的)? #1楼 最终, Microsoft SQL ...

  5. 浅谈SQL Server数据库分页

    数据库分页是老生常谈的问题了.如果使用ORM框架,再使用LINQ的话,一个Skip和Take就可以搞定.但是有时由于限制,需要使用存储过程来实现.在SQLServer中使用存储过程实现分页的已经有很多 ...

  6. SQL Server基础之存储过程

    阅读目录 一:存储过程概述 二:存储过程分类 三:创建存储过程 1.创建无参存储过程 2.修改存储过程 3.删除存储过程 4.重命名存储过程 5.创建带参数的存储过程   简单来说,存储过程就是一条或 ...

  7. sql server内置存储过程、查看系统信息

    1.检索关键字:sql server内置存储过程,sql server查看系统信息 2.查看磁盘空间:EXEC master.dbo.xp_fixeddrives , --查看各个数据库所在磁盘情况S ...

  8. SQL Server 初步学习存储过程总结

    一:存储过程概述  SQL Server中的存储过程是使用T_SQL编写的代码段.它的目的在于能够方便的从系统表中查询信息,或者完成与更新数据库表相关的管理任务和其他的系统管理任务.T_SQL语句是S ...

  9. Sql Server 数据分页

    Sql Server 数据分页 在列表查询时由于数据量非常多,一次性查出来会非常慢,就算一次查出来了,也不能一次性显示给客户端,所以要把数据进行分批查询出来,每页显示一定量的数据,这就是数据要分页. ...

最新文章

  1. saltstack mysql模块_SaltStack工具中MySQL的模块返回值问题解决
  2. 5/5 MySQL入门总结:其它操作
  3. mysql5.7.12 my.ini文件_MySQL5.7缺少my.ini文件的解决方法
  4. MSP430F5529 DriverLib 库函数学习笔记(六)定时器A产生PWM波
  5. 计算机原理课程设计 第二版pdf,计算机组成原理课程设计二.pdf
  6. Java核心API -- 9(异常)
  7. 数字高程模型和地图——thematicmapping.org译文(一)
  8. java简单图书馆管理系统_简单 图书馆管理系统 Java+Oracle
  9. 《暗黑3》是如何设计随机地下城的?
  10. mysql 修改字段名 sql,MySQL中使用SQL语句对字段进行重命名
  11. easyUi combobox setValue 引起的关于js的坑
  12. linux设定u盘启动,cdlinux u盘启动,教您如何设置
  13. 视频云服务四路玩家,谁是最大赢家
  14. 青海电大随学随考计算机,[青海电大]17秋随学随考中国现当代文学名著导读(1)作业4资料...
  15. 蓝牙配对-扫描-连接-状态查询
  16. 超级记忆法(4)——第二小时
  17. android修改重力感应方向
  18. Android各厂商Rom包解压方式
  19. 嵌入式操作系统风云录:历史演进与物联网未来Chapter1 第1章
  20. Linux中系统进程的详细管理

热门文章

  1. 1199. 保留整数
  2. selenium切换窗口的几种方法小结
  3. 武林外传老是显示服务器未响应,武林外传手游启动闪退及获取服务器列表失败解决方法...
  4. 武林外传为什么显示连接不上服务器,武林外传手游服务器连接失败怎么办 进不去解决方法...
  5. 全国及各省土地利用类型面板数据(2009-2016年)
  6. 【附源码】计算机毕业设计SSM农产品销售平台
  7. Ins和TikTok最受欢迎,社交媒体成为千禧一代和Z世代消费者发现国际品牌的首选渠道 | 美通社头条...
  8. DrugBank数据库以及其他介绍
  9. LeCun论文被指「洗稿」? LSTM之父发文怒怼:抄我的还标原创
  10. 数学建模优化模型简单例题_离散型优化问题Ⅱ_数学建模_每日一题(未附代码)附求解规划类问题的建议...