LIMIT的原理:
这里以LIMIT N,M为基础:LIMIT首先要找查N+M行,然后从N行处,取M行。那么这样的SQL对一次查询1275500一个操作应该是一个昂贵的开销。对于LIMIT这类的优化,第一个目标就是让N变的尽可能的小或是不用。
三种常用的类型:
第一种:显示“上一页” “下一页”这种类型
第一页:
SELECT *FROM TABLE WHERE UID='48' ORDER BY POSTDATE DESC LIMIT 20;
第二页:根据第一页的postdate进行查询如:
SELECT *FROM TABLE WHERE UID='48' AND POSTDATE<'2009-11-3' ORDER BY POSTDATE DESC LIMIT 20;
第二种:显示 “ 1,2,3,4,5…”
第一页和第二页实现同上,如从第二页跳到第5页
SELECT *FROM TABLE WHERE UID='48' AND POSTDATE<'2009-11-3' ORDER BY POSTDATE DESC LIMIT 40,20;
看到这里明白为什么大型网站的分页不是一下标识出来完了,让都能点了吧。也不会给你一个框让你输入一个页跳过去了。如果跳的页面过多,也就存在N值过大的问题了。所以要想办法避免。
第三种:显示 “1,2,3,4,5,…. 末页” 或是 “首页,<<100,101,102,103 >>末页”
别的页面的跳转的上面一样。这里就加一个末页
SELECT *FROM TABLE WHERE UID='48' ORDER BY POSTDATE ASC LIMIT 20; 如果在条件可能和情况可以考用:between … and .. 带代替limit分页操作。
简单的逻辑转换。
SELECT *FROM TABLE WHERE UID='48' ORDER BY POSTDATE DESC LIMIT 127654,20;
转换成:
SELECT *FROM TABLE WHERE ID>127654 AND UID='48' ORDER BY POSTDATE DESC LIMIT 7654,20;
相关推荐
Oracle分页(limit方式的运用)Oracle分页(limit方式的运用)
主要给大家介绍了关于MySQL limit使用方法以及超大分页问题解决的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
mysql delete limit优点: 用于DELETE的MySQL唯一的LIMIT row_count选项用于...例如,以下子句用于查找与WHERE子句对应的行,使用timestamp_column进行分类,并删除第一(最旧的)行: DELETE FROM somelog WHERE user
在mysql中使用limit传参的方法,一个简单的实例
主要介绍了使用limit,offset分页场景时为什么会慢,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
p极限在有限的并发下运行多个承诺返回和异步功能安装$ npm install p-limit用法const pLimit = require ( 'p-limit' ) ;const limit = pLimit ( 1 ) ;const input = [limit ( ( ) => fetchSomething ( 'foo' ) ) ,...
主要介绍了MongoDB 中Limit与Skip的使用方法详解的相关资料,这里对这两种方法进行了详细介绍并附示例代码,帮助大家学习理解,需要的朋友可以参考下
这两天项目里出了一个问题,LIMIT使用后报错。 需求是这样的,我有3张表,infor信息表,mconfig物料配置表,maaply物料申请表,要求是读出申请表中哪些人申请哪些物料 于是我先是这样写的: 代码如下: SELECT infor....
关于sqlite使用limit的一些详细说明
windows系统下内存压力测试工具testlimit.exe
本文档针对mysql分页之limit慢的问题,使用联合索引在大数据量的情况下优化limit分页的性能
colors_limit(默认值为10000) - 计算调色板时将考虑的最大颜色数 - 如果图像有太多颜色,则计算所有颜色的分组效率不高,因此只colors_limit使用最大百分比的颜色 min_percentage_sum(默认值为0.981) - 计算应...
程序测试工具,可以对系统和应用程序进行强度测试 (Procedures for testing tools, systems and applications on the strength testing procedures)
docker-image-size-limit 使用简单的CLI命令限制docker映像的大小。 非常适合在CI流程中使用。 阅读。安装pip install docker-image-size-limit 或使用我们的或。用法我们仅支持一个命令: $ disl your-image-name:...
java笔记\Oracle里sql不能用limit的处理
这个文件主要讲述了mysql中limit的原理,并举例子进行了使用说明。
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit Generating Code... fatal error C1076: compiler limit : internal heap limit reached; use /Zm to ...
limit方法也是模型类的连贯操作方法之一,主要用于指定查询和操作的数量,特别在分页查询的时候使用较多。ThinkPHP的l imit方法可以兼容所有的数据库驱动类的。 用法一、限制结果数量 例如获取满足要求的10个用户,...