mysql在执行limit时的优化
来源:互联网 发布:mac删除文件命令行 编辑:程序博客网 时间:2024/06/05 17:50
看mybatis的分页时,去了解了下mysql的分页查询原理。
select * from A表 where 1=1 limit 10000,10
从A表中查询出符合条件的数据,该数据从第10000条开始到10009,也就是说查询出10条结果,程序需要扫描满足条件的10010行,最后只留下10行需要的数据,显然效率十分低。
而如果是limit 10,则只是扫描10行,这样效率会大大提高。
鉴于此,在查询时尽量用条件约束条数,使用limit n,而不是limit m,n。
如下优化案例
mysql> SELECT * FROM `frontuser` where id>=(select id from frontuser limit 4900000,1)limit 10; //0.238 ms //很 明显,这 种方式胜出 .
mysql> SELECT * FROM `frontuser` limit 4900000,10; //1.054 sec;
看过一篇相关的文章,在优化查询的时候有值得借鉴的地方。
参考文章:http://www.jb51.net/article/46015.htm
0 0
- mysql在执行limit时的优化
- MYSQL limit的优化
- MYSQL limit的优化
- MYSQL limit的优化
- mysql的limit优化
- mysql的limit优化
- mysql的limit优化
- mysql的limit的优化
- mysql的limit的优化
- Mysql中limit的优化
- 优化mysql 的 limit offset
- mysql中limit的优化
- 优化mysql的limit offset
- mysql的limit性能优化
- 关于MySQL的limit优化
- 优化 MySQL 查询的 Limit 参数
- 优化 MySQL 查询的 Limit 参数
- 也谈mysql的limit优化
- 数据结构实验之图论二:基于邻接表的广度优先搜索遍历
- iOS-MJRefresh框架底层实现原理
- 每日一linux命令(51)-------date命令
- 区间修改的离线查询(询问在修改后)
- Xcode没有模拟器编译项
- mysql在执行limit时的优化
- 数据结构实验之图论二:基于邻接表的广度优先搜索遍历
- 工作周报2016.08.08-2016.08.14
- MySQL导入.sql文件及常用命令
- 将Eclipse代码导入到AndroidStudio的两种方式
- C语言 结构体
- 有人正在篡改你的超级表格数据,你居然还不知道?
- C语言 预处理
- spark 提交jar包到集群运行报异常 java.net.UnknownHostException: mycluster