关于mysql limit查询优化思路
1. 思路一:先全部走索引(避免其它数据读取,或者此时索引都在内存中),拿到主键,再查一遍
- 场景:
1.二级索引 KEY `ind_wlb_ext_order_item_itemid` (`seller_id`,`item_id`,`status`)
2.seller_id = 2023990209, 有42000条数据 - 执行
– SELECT * FROM wlb_ext_order_item where seller_id = 2023990209 limit 100, 1000; // 0.046ms
– SELECT * FROM wlb_ext_order_item where seller_id = 2023990209 limit 1000, 1000; // 0.063ms
– SELECT * FROM wlb_ext_order_item where seller_id = 2023990209 limit 40000, 1000; // 0.279ms - 优化
– SELECT * from wlb_ext_order_item m, (SELECT id from wlb_ext_order_item where seller_id = 2023990209 limit 40000, 1000) t WHERE m.id = t.id; // 0.062ms
explain查看执行计划:
1.SELECT * FROM wlb_ext_order_item where seller_id = 2023990209 limit 40000, 1000; // 0.279ms
2.SELECT * from wlb_ext_order_item m, (SELECT id from wlb_ext_order_item where seller_id = 2023990209 limit 40000, 1000) t WHERE m.id = t.id; // 0.062ms
2. 思路二:利用主键自身的顺序特性
http://www.fuchaoqun.com/2009/04/efficient-pagination-using-mysql/
相关推荐
本文档针对mysql分页之limit慢的问题,使用联合索引在大数据量的情况下优化limit分页的性能
今天发现一篇文章写了些关于limit优化的,很不错。 文中不是直接使用limit,而是首先获取到offset的id然后直接使用limit size来获取数据。根据他的数据,明显要好于直接使用limit。这里我具体使用数据分两种情况进行...
MySql 性能到底能有多高?用了php半年多,真正如此深入的去思考这个问题还是从前天开始。有过痛苦有过绝望,到现在充满信心!
Mysql的分页的两个参数 select * from user limit 1,2 ... 您可能感兴趣的文章:详解MySQL的limit用法和分页查询语句的性能分析MYSQL分页limit速度太慢的优化方法mysql limit分页优化方法分享Mysql limit
主要介绍了Mysql Limit 分页查询优化的相关资料,非常不错,介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
Limit语法: 复制代码 代码如下:SELECT * FROM table LIMIT [offset,] rows | rows OFFSET ...为了与 PostgreSQL 兼容,MySQL 也支持句法:LIMIT # OFFSET #。 eg: 复制代码 代码如下:mysql> SELECT * FROM table L
今天小编就为大家分享一篇关于MySQL Limit性能优化及分页数据性能优化详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
详细介绍了mysql的limit经典用法及优化实例,有需要的朋友可以参考一下
第3课 查询优化技术理论与MySQL实践(一)------子查询的优化(一) 第4课 查询优化技术理论与MySQL实践(二)------子查询的优化(二) 从理论看,子查询包括的内容和范围,建立清晰的概念 从实践看,MySQL的子查询...
主要介绍了MYSQL分页limit速度太慢的优化方法,需要的朋友可以参考下
您可能感兴趣的文章:Mysql limit 优化,百万至千万级快速分页 复合索引的引用并应用于轻量级框架mysql limit分页优化方法分享使用Limit参数优化MySQL查询的方法mysql limit查询优化分析Mysql中limit的用法方法详解...
今天发现一篇文章写了些关于limit优化的,很不错。 文中不是直接使用limit,而是首先获取到offset的id然后直接使用limit size来获取数据。根据他的数据,明显要好于直接使用limit。这里我具体使用数据分两种情况进行...
mysql的分页比较简单,只需要limit offset,length就可以获取数据了,但是当offset和length比较大的时候,mysql明显性能下降 1.子查询优化法 先找出第一条数据,然后大于等于这条数据的id就是要获取的数据 缺点:...
Mysql limit分页语句用法 与Oracle和MS SqlServer相比,mysql的分页方法简单的让人想哭。 –语法: SELECT * FROM table LIMIT [offset,] rows ...如何优化limit 当一个查询语句偏移量offset很大的时候,如select * fr