1.如果有一个自动增长的id字段,则:
定义二个变量:Page,PageCount
Select top PageCount * From [tb_code] Where id>=(select min(id) from (select top (Page-1)*PageCount+1 id from [tb_code] order by id desc) as t) order by id desc
原理,根据ID计算出(Page-1)页的最小值,然后用TOP关键字及可解决问题。
2.SELECT TOP 10 id,username From [tb_code] where id not in
( SELECT TOP 20000 id FROM tb_code ORDER BY username)
优点:此方法可以根据表中的任一个字段排序,在一个表中有几百万条记录时,仍有很高的效率,缺点是在大数据量的情况下效率略逊于第一种
3.SELECT TOP 10 id,username From
(SELECT TOP page*pagecount id, username FROM tb_code ORDER BY username)
DERIVEDTBL ORDER BY username DESC
优点:此方法可以根据表中的任一个字段排序.
缺点是效率最低
在SQL Server 2005中使用rownum分页(rownum函数使用方法介绍)
比方说要从表USER中查看第10到第20条之间的数据,那么SQL是这样实现的
SELECT * FROM (SELECT rownum rowcount,USER.* FROM USER) WHERE ROWCOUNT >=10 AND ROWCOUNT <20
其中函数ROWNUM,用来记录每一条数据所在的位置。
相关文章
- 【SQL】Oracle分页查询的三种方法
- mssql sql语句过滤百分号的方法分享
- SQL SERVER 2008 中三种分页方法与比较
- sql分页查询语句(三种主流数据库)
- SQL Server使用一个语句块批量插入多条记录的三种方法
- 分析SQL语句性能3种方法分享
- 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理
- mssql sql语句过滤百分号的方法分享
- 二种sql分页查询语句分享
- C#中??和?分别是什么意思? 在ASP.NET开发中一些单词的标准缩写 C#SESSION丢失问题的解决办法 在C#中INTERFACE与ABSTRACT CLASS的区别 SQL命令语句小技巧 JQUERY判断CHECKBOX是否选中三种方法 JS中!=、==、!==、===的用法和区别 在对象比较中,对象相等和对象一致分别指的是什么?