select top 页大小 * from table1 where id> ISNULL((select max (id) from (select top ((页码-1)*页大小) id from table1 order by id) as T ),-1)
(select max (id) from (select top ((页码-1)*页大小) id from table1 order by id) as T )第一页返回NULL 也可以: select top 页大小 * from table1 where id>= (select max (id) from (select top ((页码-1)*页大小)+1 id from table1 order by id) as T ) order by id
我看了一下 第一页直接用top 还有 究竟id>=和not in哪个更好呢
id>= 当然比NOT IN 效率高了
楼上的第一条显示不出来了 ------------------------ select top 页大小 * from table1 where id>= (select max (id) from (select top ((页码-1)*页大小)+1 id from table1 order by id) as T ) order by id 这个也不行?
楼上的是啊 从第二条开始读了 (select max (id) from (select top ((页码-1)*页大小)+1 id from table1 order by id) as T ) 因为这个就是第一条 id>=第一条 所以从第二条开始了
所以我还是想用>
from table1
where id>
ISNULL((select max (id) from
(select top ((页码-1)*页大小) id from table1 order by id) as T
),-1)
(select top ((页码-1)*页大小) id from table1 order by id) as T
)第一页返回NULL
也可以:
select top 页大小 *
from table1
where id>=
(select max (id) from
(select top ((页码-1)*页大小)+1 id from table1 order by id) as T
)
order by id
第一页直接用top
还有
究竟id>=和not in哪个更好呢
------------------------
select top 页大小 *
from table1
where id>=
(select max (id) from
(select top ((页码-1)*页大小)+1 id from table1 order by id) as T
)
order by id
这个也不行?
从第二条开始读了
(select max (id) from
(select top ((页码-1)*页大小)+1 id from table1 order by id) as T
)
因为这个就是第一条
id>=第一条
所以从第二条开始了