存储过程分页.
CreatePROCEDURE [dbo].[Table_A_GetList]
@PageSize int, --页数
@PageIndex int,--页码
@Condition nvarchar(200),--where条件
@OrderBy nvarchar(200) --排序条件
AS
SET NOCOUNT ON;
if(@Condition='' or @Condition is null)
SET @Condition='1 = 1 '
SET @Condition = replace(lower(@Condition),' where ',' ')
if(@OrderBy='' or @OrderBy is null)
set @OrderBy=' ID DESC'
set @OrderBy = replace(lower(@OrderBy),' order ', ' ' )
set @OrderBy = replace(lower(@OrderBy),' by ',' ')
declare @sql nvarchar(2000)
set @sql = '
select top'+ str(@PageSize)+ ' * from Table_A A '
set @sql=@sql+' where A.ID<=
(SELECT MIN(ID) FROM
(SELECT TOP '+STR(@PageSize * (@PageIndex-1)+1)+' ID FROM Table_A WHERE '+ @Condition+' order by ID desc) AS T)
and '+ @Condition +' Order By '+ @OrderBy
exec(@sql)
只能支持主键ID 排序 暂不支持其他条件排序
来源链接:https://www.cnblogs.com/ruonanxiao/archive/2010/07/19/1780508.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。