当网站达到一定的规模时,网站的各种优化是必须要进行的。 而网站的优化中,针对数据库各种优化是最重点的了。

mysql数据库中的查询语句有关limit语句的优化。

一般limit是用在分页的程序的分页上的,当应用数据量够小时,也许感觉不到limit语句的任何问题,但当查询数据量达到一定程度时,limit的性能就会急剧下降。 这个是通过大量实例得出来的结论。

对同一张表在不同的地方取10条数据: 1)offset比较小时

代码示例: select * from user limit 10,10;   这条sql语句多次运行,时间保持在0.0004-0.0005之间。

代码示例: select * from user where uid >=( select uid from user order by uid limit 10,1 ) limit 10;   这条sql语句多次运行,时间保持在0.0005-0.0006之间,主要是0.0006。 结论:偏移offset较小时,直接使用limit较优。这个显然是子查询的原因。

2)offset大时

代码示例: select * from user limit 10000,10;   这条sql语句多次运行,时间保持在0.0187左右

代码示例: select * from user where uid >=( select uid from user order by uid limit 10000,1 ) limit 10; 这条sql语句多次运行,时间保持在0.0061左右,只有前者的1/3。可以预计offset越大,后者越优。

通过以上对比,得出mysql limit查询语句优化经验: 使用limit语句时,当数据量偏移量较小时可以直接使用limit,当数据量偏移量较大时,可以适当的使用子查询来做相关的性能优化。

转载于:https://www.cnblogs.com/infaaf/p/9138464.html

转载 - sql分页优化相关推荐

  1. 基于索引的SQL语句优化之降龙十八掌(转载)!

    一篇挺不错的关于SQL语句优化的文章,因不知原始出处,故未作引用说明,如有侵权,请联系本人! 1 前言       客服业务受到SQL语句的影响非常大,在规模比较大的局点,往往因为一个小的SQL语句不 ...

  2. mysql常用sql语句优化

    转载自:http://www.cnblogs.com/gomysql/p/3632209.html 在数据库日常维护中,最常做的事情就是SQL语句优化,因为这个才是影响性能的最主要因素.当然还有其他方 ...

  3. SQL性能优化-查询条件与字段分开执行,union代替in与or,存储过程代替union

    PS:概要.背景.结语都是日常"装X",可以跳过直接看优化历程 环境:SQL Server 2008 R2.阿里云RDS:辅助工具:SQL 审计 概要 一个订单列表分页查询功能,单 ...

  4. MySQL数据库SQL层级优化

    MySQL数据库SQL层级优化 本篇主涉及MySQL SQL Statements层面的优化. 首先,推荐一个链接为万物之始:http://dev.mysql.com/doc/refman/5.0/e ...

  5. php面试专题---MySQL常用SQL语句优化

    php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...

  6. 一个系列搞懂Mysql数据库12:从实践sql语句优化开始

    Table of Contents 字段 索引 查询SQL 引擎 MyISAM InnoDB 0.自己写的海量数据sql优化实践 mysql百万级分页优化 普通分页 优化分页 总结 除非单表数据未来会 ...

  7. SQL性能优化15个小技巧

    SQL性能优化15个小技巧 前言 sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到. 如果某天你负责的某个线上接口,出现了性能问题,需要做优化.那么你首先想到的很有 ...

  8. MySQL中的limit分页优化

    MySQL中的limit分页优化 MySQL的limit优化 mysql的分页比较简单,只需要limit offset,length就可以获取数据了,但是当offset和length比较大的时候,my ...

  9. 优化数据库的方法及SQL语句优化的原则

    优化数据库的方法: 1.关键字段建立索引. 2.使用存储过程,它使SQL变得更加灵活和高效. 3.备份数据库和清除垃圾数据. 4.SQL语句语法的优化.(可以用Sybase的SQL Expert,可惜 ...

最新文章

  1. linux cuda 如何编译器,linux – Cuda编译器不使用GCC 4.5
  2. metaq的简单封装dataChange解读
  3. kafka重新启动时出现:found a corrupted index file due to requirement failed问题解决方法
  4. 深信服副总裁张开翼:随需应变的IT新架构
  5. 什么?你的团队没有100人,那就不要用微服务了!
  6. 适用响应式 Web UI 框架
  7. Docker容器数据卷讲解
  8. 【AIX 命令学习】errpt 显示系统错误报告!
  9. cmd命令不识别exp_sqlplus、exp、imp不是内部或外部命令,也不是可运行的程序
  10. 【深度】揭穿QQ偷窥6亿用户隐私的三大阳谋
  11. 汉字编码对照表(gb2312/Big5/GB2312)
  12. 算法导论学习笔记12_动态规划
  13. 车辆悬架刚度计算方法
  14. html的介绍及常用标签,吊打面试官系列!
  15. 【史上最最最高仿】V2EX论坛源码—React + Golang开源库,求高手拍砖提建议~
  16. Arcgis For Android实现比例尺
  17. 汽车领域多语种迁移学习挑战赛-Coggle 30 Days of ML
  18. 零基础学SQL(九、分组 GROUP BY)
  19. 2021 年年度最佳开源软件
  20. 【搬运】Intel核显Platform ID整理及SMBIOS速查表 By 黑果小兵的部落阁

热门文章

  1. MaxScale:实现MySQL读写分离与负载均衡的中间件利器
  2. 带权重的随机输出数组中的元素
  3. 艾伟:FCKeditor 配置、扩展
  4. 机器学习中qa测试_机器学习自动化单元测试平台
  5. Python实现:详解LRU缓存淘汰算法
  6. 2018湖北计算机准考证打印,2018年3月湖北计算机等级考试准考证打印入口
  7. CentOS 如何搭建本地和局域网yum源
  8. Python中scrapy下载保存图片
  9. php 编译安装降解,对php编译安装的修正
  10. poj3169(差分约束+SPFA)