又快又简单的sql2005分页存储过程

DECLARE         @rows_per_page         AS         INTEGER    
DECLARE         @current_page         AS         INTEGER    
DECLARE         @start_row_num         AS         INTEGER    

--        设置每页的行数   
SET         @rows_per_page         =         20    
--        设置要显示的页号(从1开始)   
SET         @current_page         =         2    
--        设置开始行号   
SET         @start_row_num         =        ( @current_page         -         1 )        *         @rows_per_page    

WITH        t        AS    
(   
        
SELECT        ROW_NUMBER()        OVER ( ORDER         BY        id)        AS        row_number,        *        
        
FROM        testtable   
)   
SELECT         *         from        t       
WHERE        row_number        BETWEEN         @start_row_num         AND         @start_row_num         +         @rows_per_page  

你可能感兴趣的:(sql2005)