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)