)
as
declare @StartRow int
declare @EndRow int
-- 计算当前页开始行
set @StartRow = (@PageIndex - 1) * @PageSize 1
-- 计算当前页结束行
set @EndRow = @StartRow @PageSize - 1
-- 建一张内存表用于存储检索结果
declare @temp table
(
AutoID [int] IDENTITY (1, 1) NOT NULL,
RowID [int]
)
-- 执行检索
insert into @temp(RowID)
select RowID from UserGoldHistory
where left(DateTimeTag,10) between @StartDate and @EndDate
set @RowCount = @@ROWCOUNT
select * from UserGoldHistory where RowID in (
select RowID from @temp where AutoID between @StartRow and @EndRow)
sql2005
create proc proc_Split
-- 配置每页的行数
@page_size int,
-- 配置当前页
@page_current int,
-- 总记录数
@rows_count int out
as
select @rows_count=count(UserName) from ForumUser
DECLARE @start_row_num int
DECLARE @end_row_num int
-- 配置开始行号
SET @start_row_num = (@page_current - 1) * @page_size 1
-- 配置结束行号
SET @end_row_num = @start_row_num @page_size - 1;
WITH temptesttable AS
(
SELECT ROW_NUMBER() OVER(ORDER BY UserName) AS row_number, *
FROM ForumUser
)
SELECT * from temptesttable
WHERE row_number BETWEEN @start_row_num AND @end_row_num
http://www.cnblogs.com/laiwen/archive/2006/12/09/587472.html
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




