1. 关键字 TOP
-- 案例: 查询第3页,每页 10 条数据
select top 10 id
from hrm
where id not in(select top 20 id from hrm)
-- 解读: pageNumber:页码;例如第一页; pageSize :每页条数;例如每页显示10条
select top pageSize id
from hrm
where id not in(select top (pageNumber-1)*pageSize id from hrm)
2. 关键字 ROW_NUMBER() OVER(Order by 排序字段 )
-- 案例: 查询第3页,每页 10 条数据
select id,lastname from (
select *, ROW_NUMBER() OVER(Order by id ) AS rowid from hrm
) as userTmp
where rowid > 20 and rowid <= 30
--where rowid between 21 and 30
解读: pageNumber:页码;比如第一页; pageSize :每页条数;比如每页显示10条
select id,lastname from (
select *, ROW_NUMBER() OVER(Order by id ) AS rowid from hrm
) as userTmp
where rowid > (pagenumber-1)*pageSize and rowid <= pageSize*pageNumber
--where rowid between (pagenumber-1)*pageSize+1 and pageSize*pageNumber
3. 关键字 offset 20 rows fetch next 10 rows only 2008版本往上
-- 案例: 查询第3页,每页 10 条数据
select id from hrm order by id offset 30 rows fetch next 10 rows only
-- 解读: pageNumber:页码;比如第一页; pageSize :每页条数;比如每页显示10条
select id from hrm
order by id offset (pageNumber-1)*pageSize rows fetch next pageSize rows only