苏飞论坛
标题:
存储过程分页,支持Where 和排序, 通用任何表
[打印本页]
作者:
qq576733600
时间:
2013-6-26 17:14
标题:
存储过程分页,支持Where 和排序, 通用任何表
自己编写的一个 存储过程分页。
调用的时候 传人 表名 排序 页码参数 和查询条件 即可
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[GetRecordFromPage]
@tblName varchar(255), -- 表名
@fldName varchar(255), -- 排序语句
@PageSize int = 10, -- 页尺寸
@PageIndex int = 1, -- 页码
@strWhere varchar(2000) = '' -- 查询条件 (注意: 不要加 where)
AS
declare @strSQL varchar(6000) -- 主语句
declare @strTmp varchar(1000) -- 临时变量
declare @strOrder varchar(500) -- 排序类型
set @strSQL='select *
from (
select row_number()over(order by tempColumn)tempRowNumber,*
from (select top '+str(@PageSize*@PageIndex)+' tempColumn=0,* from '+@tblName+'
where '+@strWhere+'
'+@fldName+'
)t
)tt
where tempRowNumber>'+str((@PageIndex-1)*@PageSize)+' '
print @strSQL --输出sql语句
exec (@strSQL)
复制代码
作者:
gangn
时间:
2013-8-7 12:04
非常感谢你帮了我的大忙,真的太感谢你啦!
作者:
gangn
时间:
2013-8-10 14:44
还没看懂...要注释一下吗?楼主
作者:
chenbangbin
时间:
2014-12-22 15:16
强烈支持楼主ing……
欢迎光临 苏飞论坛 (http://www.sufeinet.com/)
Powered by Discuz! X3.4