大家帮忙看看这个存储过程能否用于百万数据级的翻页?
大家帮忙看看这个存储过程能否用于百万数据级的翻页?
CREATE PROCEDURE zkx_Web_TelesellAdmin_getMsgList
(@tblTable nvarchar(200), --要操作的数据表
@pagesize int, --每页显示页数
@pageindex int, --当前页码
@isFirst bit, --是否是第一页 为 0 显示第一页内容 为 1 显示翻页内容
@doCount bit --操作类型 0 表示获取记录总数 1 表示获取记录信息
)
AS
set nocount on
if(@doCount=0)
exec( 'select count(ID) from '+@tblTable)
else
declare @sql Nvarchar(1000)
if @isFirst=0
set @sql= 'select top '+ltrim(@pagesize)+ ' * from '+@tblTable+ ' order by ID desc '
else
set @sql= 'select top '+ltrim(@pagesize)+ ' * from '+@tblTable+ ' where (ID not in(select top '+ltrim((@pageindex-1)
*@pagesize)+ ' ID from '+@tblTable+ ' order &nb