码迷,mamicode.com
首页 > 其他好文 > 详细

两个表的分页存储过程

时间:2016-07-01 21:37:30      阅读:302      评论:0      收藏:0      [点我收藏+]

标签:

create proc [dbo].[usp_contacts_select_by_page]--存储过程名称

@pageindex int,--当前页

@pagesize int,--每页条数

@pagecount int output,--总页数

@recordcount int output--总条数

as

begin

select c1.*,c2.groupName into #tmp_contacts from Contacts as c1 inner join

ContactGroup as c2 on c1.groupId=c2.groupId--将两个表中的数据存放到临时表中

select * from

(select *,rn=ROW_NUMBER()over(order by contactId asc)from #tmp_contacts)as t

where t.rn between(@pageindex-1)*@pagesize+1 and @pageindex*@pagesize

set @recordcount=(select COUNT(*)from #tmp_contacts)

set @pagecount=CEILING(@recordcount*1.0/@pagesize)

end

执行

declare @m int,@n int

exec [dbo].[usp_contacts_select_by_page] 2,5,@m output,@n output

print @m

print @n

两个表的分页存储过程

标签:

原文地址:http://www.cnblogs.com/zhuyuchao/p/5634188.html

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