Jeg antager at pagenr variablen er den som fortaler hvilken side du vil have og
pagemax er den som fortaler antal records pr. side.
Pagenr starter ved 1 (one-based)
Den følgende kode er blot en skitse og du skal udfylde det med noget af dit kode.
create procedure sp_getPage( @pagenr int, @pagemax int)
as
SET NOCOUNT ON
-- først lidt administration af sider
DECLARE @FirstRec int, @LastRec int
SET @FirstRec = (@pagenr - 1) * @pagemax
SET @LastRec = (@pagenr * @pagemax + 1)
-- nu laver vi en temp tabel
CREATE TABLE #TempItems
(
ID int IDENTITY,
etellerandet varchar(50)
)
-- som skal indeholde de data vi gerne vil hente
insert into #TempItems (etellerandet)
select noget from dintabel where betingelse > 0
-- nu udvælger vi det rigtige afsnit
select *
from #TempItems
where ID > @FirstRec and ID < @LastRec
SET NOCOUNT OFF
Du kan selvfølgelig sofistikere selecten med f.eks. en order by osv.
/pawel