主页 > 知识库 > 分享三种高效率SQL语句分页方法

分享三种高效率SQL语句分页方法

热门标签:AI电销 铁路电话系统 呼叫中心市场需求 地方门户网站 服务外包 Linux服务器 百度竞价排名 网站排名优化
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,用来记录每一条数据所在的位置。
您可能感兴趣的文章:
  • 高效的SQLSERVER分页查询(推荐)
  • mysql分页原理和高效率的mysql分页查询语句
  • sqlserver2005使用row_number() over分页的实现方法
  • MySQL 百万级分页优化(Mysql千万级快速分页)
  • SQL SERVER 2008 中三种分页方法与比较
  • mysql limit分页优化方法分享
  • oracle,mysql,SqlServer三种数据库的分页查询的实例
  • php+mysql分页代码详解
  • Oracle实现分页查询的SQL语法汇总
  • java分页拦截类实现sql自动分页

标签:兰州 铜川 湖南 黄山 湘潭 崇左 衡水 仙桃

巨人网络通讯声明:本文标题《分享三种高效率SQL语句分页方法》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266