SqlServr分页存储过程的写法
Posted 石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SqlServr分页存储过程的写法相关的知识,希望对你有一定的参考价值。
CREATE PROCEDURE [dbo].[GetDataByPager] ( --从第几条数据取 @startIndex INT, --分页的表 @tableName VARCHAR(50), --每次取多少条 @pageSize INT=5, --条件 @condition VARCHAR(1000)=‘1=1‘, --通过Id进行排除 @key VARCHAR(20)=‘id‘ )AS BEGIN --通过主建排除法 不需要进行排序 DECLARE @TopCount INT --SET @TopCount=(@pageIndex-1)*@pageSize DECLARE @SQL VARCHAR(1000) SET @SQL=‘select TOP ‘ +CONVERT(VARCHAR(20),@pagesize)+‘ * FROM ‘[email protected] +‘ WHERE ‘+ @condition+‘ and ‘[email protected]+‘ NOT IN(SELECT TOP ‘ +CONVERT(VARCHAR(20),@startIndex)[email protected]+‘ FROM ‘[email protected]+‘);‘ --返回的总条数 SET @SQL [email protected]+‘ SELECT COUNT(*) FROM ‘[email protected]+‘ WHERE ‘[email protected] --PRINT(@SQL) EXEC(@SQL) END
以上是关于SqlServr分页存储过程的写法的主要内容,如果未能解决你的问题,请参考以下文章