码迷,mamicode.com
首页 > 数据库 > 详细

sql 存储过程 分页

时间:2015-12-08 20:13:04      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:

ALTER PROCEDURE [dbo].[BrokerToLenderDataShow2]
@Where VARCHAR(200), --查询条件 不含‘where‘字符,如id>10 and len(userid)>9
--@Order VARCHAR(200), --排序 不含‘order by‘字符,如id asc,userid desc,必须指定asc或desc
--注意当@SortType=3时生效,记住一定要在最后加上主键,否则会让你比较郁闷
--@SortType INT, --排序规则 1:正序asc 2:倒序desc 3:多列排序方法
--@RecorderCount INT, --记录总数 0:会返回总记录
@PageSize INT, --每页输出的记录数
@PageIndex INT --当前页数,从1开始
--@TotalCount INT OUTPUT, --记返回总记录
--@TotalPageCount INT OUTPUT --返回总页数

AS
BEGIN
DECLARE @Sql VARCHAR(2000), @Sql2 NVARCHAR(2000),@sql3 nvarchar(2000),@BetweenStart int ,@BetweenEnd int


set @BetweenStart= convert(int,@PageSize*@PageIndex)-@PageSize+1
set @BetweenEnd=convert(int,@PageSize*@PageIndex)

set @Sql3= ‘ select * from ( SELECT ROW_NUMBER() over (ORDER BY b.ID ) RowNumber,
* from loanee b where 1=1 ‘+@Where+‘
) t
where t.RowNumber BETWEEN ‘ + ltrim(str(@BetweenStart)) + ‘ and ‘ + ltrim(str(@BetweenEnd));
print @sql3

exec(@sql3)

END

 

-----------------------------------------------------------------------------------

-- 没有条件 的 调用
exec [BrokerToLenderDataShow2] ‘ ‘,10,1

--有条 的调用
exec [BrokerToLenderDataShow2] ‘ and id>10‘,10,1

 

sql 存储过程 分页

标签:

原文地址:http://www.cnblogs.com/yangjinwang/p/5030667.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!