注册 登录
编程论坛 SQL Server论坛

[求助]怎样分页查询

爱猪の云 发布于 2007-01-22 20:05, 587 次点击
如果我有个表里面有100条记录...我想分页把它查出来....而且是按时间顺序排列的....
请问下要怎么样才能是查询出来的按时间是先后排列来分页啊....比如:
第一页我要显示1-20条记录...第二页要显示21-40条记录....第三页..........
而且是按时间的先后排列的```
这样的SQL语句要怎么写啊.......
4 回复
#2
棉花糖ONE2007-01-23 11:31
去精华版里面找,有top实现的分页
#3
chenxkfox2007-01-23 17:08

--高人写的,借来用用,希望对你有帮助!

use pubs
go
select * from jobs
go

create proc proc_page
(
@PageSize int=10,--一页分几条
@CurPage int=1,--多少页
@tab varchar(22)='titles'
)
as

declare @tempA varchar(10)
declare @tempB varchar(10)
declare @tempC varchar(40)
set @tempA = Convert(varchar(10), @PageSize)
set @tempB = Convert(varchar(10),@PageSize*(@CurPage-1))
set @tempC = Convert(varchar(40),@tab)
--select @count=count(*) from @tempC where @field=@field2
--set @count = 3
exec('select top '+@tempA+' * from '+@tempC+' where job_id not in ( select top '+@tempB+' job_id from '+@tempC+') ')
go
--第一个参数是指一页显示信息的数目
--第二个参数是指要显示的页数
--第三个参数是指表的名称
exec proc_page 4,3,'jobs'

#4
bygg2007-01-23 20:35
select top 10 * from table where id>@id order by datetime
#5
爱猪の云2007-01-23 21:20
OK啦```谢谢大家指点........呵呵....
1