php下MYSQL limit的优化


Posted in PHP onJanuary 10, 2008

同样是取10条数据
select * from yanxue8_visit limit 10000,10 

select * from yanxue8_visit limit 0,10
就不是一个数量级别的。 

    网上也很多关于limit的五条优化准则,都是翻译自mysql手册,虽然正确但不实用。今天发现一篇文章写了些关于limit优化的,很不错。原文地址:http://www.zhenhua.org/article.asp?id=200

    文中不是直接使用limit,而是首先获取到offset的id然后直接使用limit size来获取数据。根据他的数据,明显要好于直接使用limit。这里我具体使用数据分两种情况进行测试。(测试环境win2033+p4双核(3GHZ) +4G内存 mysql 5.0.19)

1、offset比较小的时候。 
 select * from yanxue8_visit limit 10,10 
   多次运行,时间保持在0.0004-0.0005之间 
  Select * From yanxue8_visit Where vid >=(
Select vid From yanxue8_visit Order By vid limit 10,1
) limit 10 

  多次运行,时间保持在0.0005-0.0006之间,主要是0.0006
 结论:偏移offset较小的时候,直接使用limit较优。这个显然是子查询的原因。
2、offset大的时候。 
 select * from yanxue8_visit limit 10000,10 
  多次运行,时间保持在0.0187左右 
  Select * From yanxue8_visit Where vid >=(
Select vid From yanxue8_visit Order By vid limit 10000,1
) limit 10
多次运行,时间保持在0.0061左右,只有前者的1/3。可以预计offset越大,后者越优。 

PHP 相关文章推荐
PHP性能优化准备篇图解PEAR安装
Dec 05 PHP
编译php 5.2.14+fpm+memcached(具体操作详解)
Jun 18 PHP
九个你必须知道而且又很好用的php函数和特点
Aug 08 PHP
php检测用户是否用手机(Mobile)访问网站的类
Jan 09 PHP
ThinkPHP3.1新特性之对Ajax的支持更加完善
Jun 19 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
PHP实现UTF-8文件BOM自动检测与移除实例
Nov 05 PHP
php实现图片转换成ASCII码的方法
Apr 03 PHP
必须收藏的php实用代码片段
Feb 02 PHP
PHP使用redis消息队列发布微博的方法示例
Jun 22 PHP
php的常量和变量实例详解
Jun 27 PHP
在laravel框架中使用model层的方法
Oct 08 PHP
优化使用mysql存储session的php代码
Jan 10 #PHP
Http 1.1 Etag 与 Last-Modified提高php效率
Jan 10 #PHP
PHP读取目录下所有文件的代码
Jan 07 #PHP
台湾中原大学php教程孙仲岳主讲
Jan 07 #PHP
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
Dec 11 #PHP
php下过滤HTML代码的函数
Dec 10 #PHP
php字符串截取中文截取2,单字节截取模式
Dec 10 #PHP
You might like
基于python发送邮件的乱码问题的解决办法
2013/04/25 PHP
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
php把数组值转换成键的方法
2015/07/13 PHP
php如何控制用户对图片的访问 PHP禁止图片盗链
2016/03/25 PHP
PHP让网站移动访问更加友好方法
2019/02/14 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
Firefox window.close()的使用注意事项
2009/04/11 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
四种参数传递的形式——URL,超链接,js,form表单
2015/07/24 Javascript
jQuery动画效果实现图片无缝连续滚动
2016/01/12 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
前端页面文件拖拽上传模块js代码示例
2017/05/19 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
2017/09/20 Javascript
微信小程序获取当前位置和城市名
2019/11/13 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
vue+element使用动态加载路由方式实现三级菜单页面显示的操作
2020/08/04 Javascript
[01:15:29]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第三局
2016/03/04 DOTA
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
2014/05/23 Python
pycharm 使用心得(三)Hello world!
2014/06/05 Python
python装饰器decorator介绍
2014/11/21 Python
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
Django与JS交互的示例代码
2017/08/23 Python
Python中sorted()排序与字母大小写的问题
2020/01/14 Python
python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例
2020/02/28 Python
Python进程的通信Queue、Pipe实例分析
2020/03/30 Python
使用Python将语音转换为文本的方法
2020/08/10 Python
武汉东之林科技有限公司机试
2013/09/17 面试题
Linux内核产生并发的原因
2016/11/08 面试题
校园报刊亭创业计划书
2014/01/02 职场文书
服务行业演讲稿
2014/09/02 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
婚礼庆典答谢词
2015/01/20 职场文书
股份转让协议书范本
2015/01/27 职场文书
2015年宣传思想工作总结
2015/05/22 职场文书
Win11怎么进入安全模式?Windows 11进入安全模式的方法
2021/11/21 数码科技