CREATE proc [dbo].[EX_SP_GetTopicList]
@intPageNo int, --页号
@intPageSize int, --每页显示数
@RecordCount int OUTPUT --总记录数(存储过程输出参数
as
DECLARE @StrSQL VARCHAR(5000)
declare @PredCount VARCHAR(20)
set nocount on
set @PredCount=CONVERT(VARCHAR(20),(@intPageNo-1) * @intPageSize)
--计算出记录总数
SELECT @RecordCount=COUNT(ID) FROM EX_POLICYRULE
--创建临时表
CREATE TABLE #TMPTABLE
(
[ID] int NOT NULL
)
--筛选出已经展示过的信息
SET @StrSQL='INSERT INTO #TMPTABLE SELECT TOP '+@PredCount +' [ID]
FROM EX_POLICYRULE
ORDER BY PUB_DATE DESC'
EXEC(@StrSQL)
--筛选出当前页所要展示的信息
SET @StrSQL='SELECT TOP '+CONVERT(VARCHAR(20),@intPageSize)+' [ID],INFO_ID,INFOTITLE,BBSJ,BBDW,PUB_DATE
FROM EX_POLICYRULE
WHERE [ID] NOT IN (SELECT [ID] FROM #TMPTABLE)
ORDER BY PUB_DATE DESC'
EXEC(@StrSQL)
--删除临时表
DROP TABLE #TMPTABLE
相关推荐
分页存储过程 分页存储过程 分页存储过程 sql代码
ASP.NET 存储过程分页是一种在Web应用中实现高效数据检索的技术,它结合了数据库存储过程和分页策略,以提高性能并减轻服务器负担。在这个主题中,我们将深入探讨如何在ASP.NET环境中利用存储过程来实现数据的分页...
ibatis调用oracle存储过程分页
本话题将深入探讨“存储过程分页”以及与之配合使用的“分页控件”,帮助你理解这两种技术的核心概念及其应用。 首先,我们来讨论“存储过程分页”。存储过程是预编译的SQL语句集合,它在数据库服务器上执行,可以...
### Oracle存储过程分页知识点详解 #### 一、Oracle存储过程分页原理及实现方法 在Oracle数据库中,实现分页查询通常有两种方法:一种是使用`ROWNUM`伪列,另一种则是通过存储过程实现。其中,使用存储过程进行...
#### 存储过程分页概述 存储过程是一种预先编译好的 SQL 代码块,存储在 SQL Server 数据库中。使用存储过程进行分页查询的好处包括:提高执行效率、增强代码复用性以及提供更好的安全性等。 #### 示例存储过程分析...