Pagination in Sql Server 2005
Method 1:
Method2:
- DECLARE @rowsPerPage int,
 - @pageNum int,
 - @startRow int,
 - @endRow int
 - SET @rowsPerPage = 10
 - SET @pageNum = 3
 - SET @startRow = ((@pageNum- 1) * @rowsPerPage)+1
 - SET @endRow = @startRow + @rowsPerPage -1
 - SELECT * FROM (
 - SELECT row_number() OVER (ORDER BY id) as resultNum,
 - id FROM myTable
 - ) as numberResults
 - WHERE resultNum BETWEEN @startRow AND @endRow 
 
Method2:
- SET @rowsPerPage = 10
 - SET @pageNum = 3
 - With SQLPaging
 - As
 - (
 - Select Top(@rowsPerPage * @pageNum) ROW_NUMBER() OVER (ORDER BY id) as resultNum, id
 - FROM myTable
 - )
 - select * from SQLPaging where resultNum > ((@pageNum - 1) * @rowsPerPage)  
 
Comments