select top 35 *
from TABLE1
where
(
siteid=3 and id not in
(
select top 35 id from TABLE1
where siteid=3 order by id
)
)
order by id
--原理就是去掉 前(页码-1)*页面大小 个编号id ,尽管效率不高,但是有可行性
from TABLE1
where
(
siteid=3 and id not in
(
select top 35 id from TABLE1
where siteid=3 order by id
)
)
order by id
--原理就是去掉 前(页码-1)*页面大小 个编号id ,尽管效率不高,但是有可行性
弊病:1 强制排序
2 排序列必须是唯一列,否则分页情况不符实际
3. 使用not in,速度慢,
2 排序列必须是唯一列,否则分页情况不符实际
3. 使用not in,速度慢,
下面一个就是利用他的一个利用唯一列 (id)编号来产生一个区间,必须要求是自增编号,效果不太好,不适用于搜索结果。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
select top 页大小 *
from testtable
where (
id >
(
select max(id)
from
(
select top 页大小*页数 id from 表 order by id ) as t
)
)
order by id
--弊病:1 强制排序
-- 2 排序列必须是唯一列,否则分页情况不符实际
from testtable
where (
id >
(
select max(id)
from
(
select top 页大小*页数 id from 表 order by id ) as t
)
)
order by id
--弊病:1 强制排序
-- 2 排序列必须是唯一列,否则分页情况不符实际
欢迎大家拍转。