Welcome 微信登录

首页 / 数据库 / MySQL / 优化MySQL 的 limit offset

limit 和offset  通常会和order by 一起使用。索引对排序比较有帮助,如果没有索引就需要大量文件排序,因此在order by 列一定要添加索引。如果有:select * from mytable order by sp_id limit 100000,10类似的sql语句出现,那么这个操作的代价非常高,会扫描 100010 行数据。这个时候可以改成select * from mytableinner join (select pid from mytable  order by sp_id limit 100000,10)  as lim using (pid);注:  sp_id  建立了 BTREE 索引则能够让服务器在索引上面检查尽可能少的数据,一旦取得了需要的行,就将他们连接在完整的表上面,并取得其余的列。修改前的SQL 语句执行时间为 2.10 秒,修改后的SQL语句执行时间为  1.75秒。节省了  0.35秒的时间。MySQL Limit的用法总结分析MySQL数据类型的长度相关资讯      MySQL教程 
  • 30分钟带你快速入门MySQL教程  (02月03日)
  • MySQL教程:关于I/O内存方面的一些  (01月24日)
  • CentOS上开启MySQL远程访问权限  (01/29/2013 10:58:40)
  • MySQL教程:关于checkpoint机制  (01月24日)
  • MySQL::Sandbox  (04/14/2013 08:03:38)
  • 生产环境MySQL 5.5.x单机多实例配  (11/02/2012 21:02:36)
本文评论 查看全部评论 (0)
表情: 姓名: 字数