USE RYPlatformManagerDB
GO
SET ANSI_NULLS, QUOTED_IDENTIFIER ON
GO
CREATE Proc [dbo].[WEB_PageView]@TableName        NVARCHAR(2000),            -- 表名@ReturnFields    NVARCHAR(1000) = '*',    -- 查询列数@PageSize        INT = 10,                -- 每页数目@PageIndex        INT = 1,                -- 当前页码@Where            NVARCHAR(1000) = '',    -- 查询条件@OrderBy        NVARCHAR(1000),            -- 排序字段@PageCount        INT OUTPUT,                -- 页码总数@RecordCount    INT OUTPUT                -- 记录总数
WITH ENCRYPTION AS--设置属性
SET NOCOUNT ON-- 变量定义
DECLARE @TotalRecord INT
DECLARE @TotalPage INT
DECLARE @CurrentPageSize INT
DECLARE @TotalRecordForPageIndex INTBEGINIF @Where IS NULL SET @Where=N''-- 记录总数DECLARE @countSql NVARCHAR(4000)  IF @RecordCount IS NULLBEGINSET @countSql='SELECT @TotalRecord=Count(*) From '+@TableName+' '+@WhereEXECUTE sp_executesql @countSql,N'@TotalRecord int out',@TotalRecord OUTENDELSEBEGINSET @TotalRecord=@RecordCountEND        SET @RecordCount=@TotalRecordSET @TotalPage=(@TotalRecord-1)/@PageSize+1    SET @CurrentPageSize=(@PageIndex-1)*@PageSize-- 返回总页数和总记录数SET @PageCount=@TotalPageSET @RecordCount=@TotalRecord-- 返回记录SET @TotalRecordForPageIndex=@PageIndex*@PageSizeEXEC    ('SELECT *FROM (SELECT TOP '+@TotalRecordForPageIndex+' '+@ReturnFields+', ROW_NUMBER() OVER ('+@OrderBy+') AS PageView_RowNoFROM '+@TableName+ ' ' + @Where +' ) AS TempPageViewTableWHERE TempPageViewTable.PageView_RowNo > '+@CurrentPageSize)

END
RETURN 0GO

转载于:https://www.cnblogs.com/codeDevotee/p/11332221.html

sql server动态分页相关推荐

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

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

  2. Sql Server 数据分页

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

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

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

  4. 浅谈SQL Server数据库分页

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

  5. Sql Server 2005 分页

    摘要:Sql Server 分页查询sql! Sql Server 2005分页查询数据,适用于手机端和服务器端交互 一:Dao代码: /*** 分页查询研讯分类下的新闻列表*/@Overridepu ...

  6. SQL Server OFFSET 分页存储过程

    SQL Server OFFSET 分页存储过程 --参数值 SET @sqlquert=N'SELECT * FROM dbo.tbCOM_Job ORDER BY Job_ID ';--这里一定得 ...

  7. Sql Server 2012 分页方法分析(offset and fetch)

    最近在分析 Sql Server 2012 中 offset and fetch 的新特性,发现 offset and fetch 无论语法的简洁还是功能的强大,都是相当相当不错的.其中  offse ...

  8. 数据库 ACCESS与SQL SERVER 2000分页SQL语句 分析

    原SQL语句:SELECT TOP 10 * FROM [Order] WHERE [ID] NOT IN(SELECT TOP 6000 [ID] FROM [Order] ORDER BY [ID ...

  9. SQL Server 常用分页SQL

    今天无聊和朋友讨论分页,发现网上好多都是错的.网上经常查到的那个Top Not in 或者Max 大部分都不实用,很多都忽略了Order和性能问题.为此上网查了查,顺带把2000和2012版本的也补上 ...

  10. SQL Server 动态数据掩藏(Dynamic Data Masking)探索和实施

    动态数据掩藏(DDM) 是SQL Server 2016 CTP 2.1引入的新功能 数据库加密技术本质上改变了数据存储结构,而DDM只是在返回客户端的时候对数据进行隐藏.sysadmin的成员登陆账 ...

最新文章

  1. 【转】MFC消息映射详解(整理转载)
  2. 对于生活我选择了无奈
  3. javafx_JavaFX 2 GameTutorial第2部分
  4. Socket编程实践(4) --多进程并发server
  5. Pandas to_numeric
  6. 在sealos搭建的k8s集群中自定义kubeconfig文件
  7. Java I/O系统之Print 流
  8. python 两个list 求交集,并集,差集
  9. Atitit 架构师之道 attilax著 1.1. 认和评估系统需求, 2 1.2. 给出开发规范 2 1.3. ,搭建系统实现的核心构架, 2 1.4. 扫清主要难点的技术人员 2 1.5. 核
  10. 《大话数据结构》学习笔记
  11. 十个C语言项目,从小白到月入10K
  12. 【设计鉴赏】精选字体设计鉴赏
  13. c++ 取模和求余运算
  14. AngularJS【初体验】-02
  15. 海伦公式c语言double,海伦公式
  16. 计算机学院举办 温暖冬日 感恩社会 活动,温暖冬日 感恩社会 计算机学院举办冬季送温暖活动...
  17. MO3音频文件格式可以用XMplay打开并转换格式
  18. 大公司高级Android工程师技能要求
  19. 自定义微博小尾巴(源码+解析)
  20. 用什么软件可以快速制作微信视频

热门文章

  1. Opencv学习笔记_计算机视觉是什么?Opencv的起源
  2. centos下docker无法正常启动检查与解决方法
  3. 分享一下自己用c++写的小地图
  4. bash脚本编程之条件判断、条件测试
  5. 汇编调用C函数--利用堆栈传递参数
  6. cocos creator基础-(五)cc.Component使用
  7. 【webpack】使用DllPlugin拆分模块
  8. 【Linux命令】Linux下的tar压缩解压缩命令详解(转)
  9. numpy提供的快速的元素级数组函数
  10. 关于sharepoint2013的SPUtility.GetGenericSetupPath()方法过期解决办法