DECLARE @current_page AS INTEGER
DECLARE @start_row_num AS INTEGER
declare @total_pages  as INTEGER
-- 设置每页的行数
SET @rows_per_page = 4
-- 设置要显示的页号(从1开始)
SET @current_page = 6

SELECT @total_pages = (COUNT(*)+ @rows_per_page-1)/ @rows_per_page
FROM zh_carsource

select @total_pages

-- 设置开始行号
if(@current_page=1)

SET @start_row_num =1

else

SET @start_row_num = (@current_page-1) * @rows_per_page+1


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

posted on 2010-03-04 10:19  rjxiaozhou  阅读(132)  评论(0编辑  收藏  举报