中国开发网: 论坛: 程序员情感CBD: 贴子 368646
茶壶
翻了翻以前的东东,好象以前还用过这样一个方法,似乎效率比正反序来得高,特别是大表多页的时候
-- 设 PageSize=20 , PageNumber = 23
select Top 20 * from TT as TT_Final where TT_Final._Id>=
(
select Top 1 A._ID as AID from
(select top 20 * 23 + 1 _ID from TT /*WHERE 子句*/ order by _ID ) as A left join
(select top 20 * 23 _ID from TT /*WHERE 子句*/order by _ID )as B on (A._ID=B._ID)
where B._ID is null

)

--其中 20*23+1的写法是为了表达意思,当然,SQL语句不能这样写,要写成 461

--这种方法加条件后不用反序,效率应该比前者高。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录