mysql单表百万记录,limit分页
来源:互联网 发布:实战数据库营销 编辑:程序博客网 时间:2024/06/11 03:06
对limit分页问题的性能优化方法
利用表的覆盖索引来加速分页查询
我们都知道,利用了索引查询的语句中如果只包含了那个索引列(覆盖索引),那么这种情况会查询很快。
因为利用索引查找有优化算法,且数据就在查询索引上面,不用再去找相关的数据地址了,这样节省了很多时间。另外Mysql中也有相关的索引缓存,在并发高的时候利用缓存就效果更好了。
在我们的例子中,我们知道id字段是主键,自然就包含了默认的主键索引。现在让我们看看利用覆盖索引的查询效果如何:
这次我们之间查询最后一页的数据(利用覆盖索引,只包含id列),如下:
select id from product limit 866613, 20 0.2秒
相对于查询了所有列的37.44秒,提升了大概100多倍的速度
那么如果我们也要查询所有列,有两种方法,一种是id>=的形式,另一种就是利用join,看下实际情况:
SELECT * FROM product WHERE ID > =(select id from product limit 866613, 1) limit 20
查询时间为0.2秒,简直是一个质的飞跃啊,哈哈
另一种写法
SELECT * FROM product a JOIN (select id from product limit 866613, 20) b ON a.ID = b.id
查询时间也很短,赞!
其实两者用的都是一个原理嘛,所以效果也差不多。
0 0
- mysql单表百万记录,limit分页
- MySQL单表百万数据记录分页性能优化 limit优化
- MySQL单表百万数据记录分页性能优化
- mysql 单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL 单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- Mysql单表百万数据记录分页性能优化
- MySQL 单表百万数据记录分页性能优化
- MySQL 单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- MySQL单表百万数据记录分页性能优化
- (转)MySQL单表百万数据记录分页…
- HDFS节点内数据平衡:DiskBalancer
- iOS json格式的字符串转字典或数组
- 如何mock合作方的报文(报文可设置)
- Java中的HashCode(2)之Hashset造成的内存泄露
- C++虚函数表解析(高级篇)
- mysql单表百万记录,limit分页
- 在myeclipse中安装JBOSS(转载)
- generatorSqlmapCustom逆向工程mybatis
- 利用git删除远程仓库内文件的方法
- 如何删除远程仓库的文件或文件夹
- 利用sp_addlinkedserver实现远程数据库链接
- CssReset
- 华为云技术支撑 运营商数字化转型
- Java内部类和外部类互相访问问题