sqlserver 分页存储过程

it2022-05-05  175

--分页--求  共多少页pageCount   当前页的数据--已知  1 每页显示几条   pageSize    2 当前页码 pageIndexselect 6/3select CEILING( 7.0/3)--第一页    pageSize=3select * from(select *,ROW_NUMBER() over(order by ptime desc) as num from photos) as twhere num between 1 and 3 order by  ptime desc--第二页select * from(select *,ROW_NUMBER() over(order by ptime desc) as num from photos) as twhere num between 4 and 6 order by  ptime desc--第三页select * from(select *,ROW_NUMBER() over(order by ptime desc) as num from photos) as twhere num between 7 and 9 order by  ptime desc--第pageIndex页  pageSize=3select * from(select *,ROW_NUMBER() over(order by ptime desc) as num from photos) as twhere num between (pageIndex-1)*pageSize+1 and pageIndex*pageSize order by  ptime desc--分页的存储过程   create proc usp_photos    @pageIndex int,        --当前页码    @pageSize int,        --页容量    @pageCount int output  --共多少页 输出参数as    declare @count int    select @count=COUNT(*) from Photos    set @pageCount = CEILING( @count*1.0/@pageSize)    select * from(select *,ROW_NUMBER() over(order by ptime desc) as num from photos) as twhere num between (@pageIndex-1)*@pageSize+1 and @pageIndex*@pageSize order by  ptime desc--测试存储过程declare @n int exec usp_photos 2,2,@n outputprint @nuse myphotos    select * from PhotoType

转载于:https://www.cnblogs.com/eric-gms/p/3464876.html

相关资源:SQLServer分页存储过程(主键为GUID)

最新回复(0)