mysql百万级分页优化
普通分页
数据分页在网页中十分多见,分页一般都是limit start,offset,然后根据页码page计算start
select * from user limit 1,20
这种分页在几十万的时候分页效率就会比较低了,MySQL需要从头开始一直往后计算,这样大大影响效率
SELECT * from user limit 100001,20; //time 0.151sexplain SELECT * from user limit 100001,20;
我们可以用explain分析下语句,没有用到任何索引,MySQL执行的行数是16W+,于是我们可以想用到索引去实现分页
优化分页
使用主键索引来优化数据分页
select * from user where id>(select id from user where id>=100000 limit 1) limit 20; //time 0.003s
使用explain分析语句,MySQL这次扫描的行数是8W+,时间也大大缩短。
explain select * from user where id>(select id from user where id>=100000 limit 1) limit 20;
总结
在数据量比较大的时候,我们尽量去利用索引来优化语句。上面的优化方法如果id不是主键索引,查询效率比第一种还要低点。我们可以先使用explain来分析语句,查看语句的执行顺序和执行性能。
转载于:https://www.cnblogs.com/IT--Loding/p/6204119.html
mysql百万级分页优化相关推荐
- mysql 百万级数据库优化方案【转】
一.百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断 ...
- MySQL百万级数据库优化方案
http://blog.csdn.net/luyee2010/article/details/8309806
- MYSQL百万级数据,如何优化
MYSQL百万级数据,如何优化 首先,数据量大的时候,应尽量避免全表扫描,应考虑在 where 及 order by 涉及的列上建立索引,建索引可以大大加快数据的检索速度.但是,有些情况索引是不会起效 ...
- oracle分页查询加总数,oracle count 百万级 分页查询记要总数、总条数优化
oracle count 百万级 分页查询记录总数.总条数优化 oracle count 百万级 查询记录总数.总条数优化 最近做一个项目时,做分页时,发现分页查询速度很慢,分页我做的是两次查询,一次 ...
- MySQL百万级/千万级数据存储解决方案
MySQL 百万级/千万级数据存储解决方案 百万级.千万级数据处理,个人认为核心关键在于数据存储方案设计,存储方案设计的是否合理,直接影响到数据CRUD操作.总体设计可以考虑一下三个方面进行设计考虑: ...
- SQL数据库不用SQL语句能显示全表的内容_MySQL百万级数据库优化方案
一.百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断 ...
- MySql 百万级数量查询优化总结
1.前言 最近所在项目接触到了百万级人口数据的功能开发,就这次开发也就准备记录下MySql的百万级别数量查询的设计和优化方案,技术能力受限,分享出来和大家一起讨论讨论. 2.数据准备 网上也有很多快速 ...
- Mysql 百万级数据优化资料
Mysql 百万级数据优化资料 一.我们可以且应该优化什么? 硬件 操作系统/软件库 SQL服务器(设置和查询) 应用编程接口(API) 应用程序 -------------------------- ...
- ASP.NET 百万级分页查询续
介绍: 包括ASP.NET和ASP.NET AJAX + JSON两个DEMO,最低耗时35ms左右(AJAX+JSON). 百万级数据库查询分页,使用Oracle 存储过程. 代码生成的案例: As ...
最新文章
- [工具推荐]用了TrueCrypt 再无难掩之隐
- 开发者数量2025年预计破亿,GitHub最新年度报告来啦!
- 虚拟服务器目录,服务器虚拟主机目录
- windows10 64位 Tensorflow安装--CUDA 9.1+cuDNN7.1.1+python3.6.4+tf1.6+vs2017
- AsSystemRum 系统提权工具 实现思路及其源码
- matlab绘制三维图形现状,MATLAB绘制三维图形
- CNN结构基元:纹理结构和纹理基元方程化GLOH、Gabor...(Code)
- python怎么封装供java调用_python调用第三方java包实例
- java 对象流 乱码,JAVA 中的 IO 流
- 在.NET外散步之我爱贪吃蛇Python -常见数据结构(新浪和百度云平台即将推出Python免费空间)...
- 通达信资金净流入公式_通达信指标公式:资金净流入,监控资金流入流出,分享...
- Win10 打开设置里面账户下点击登录选项页面卡住,很慢才出现
- dell服务器uefi安装系统安装win7系统安装win7系统教程,强制给戴尔optiplex3050安装win7图文教程...
- MySQL数据库中库、表名、字段的大小写问题
- Wincap连接虚拟机中的kali被拒绝(自身经验)
- C++ imagemagick png图片压缩,背景变黑问题
- IntelliJ IDEA主题背景设置护眼色
- Android - 简单的显示高德SDK中的3D地图
- 自己动手写数据库系统:容灾恢复原理和容灾恢复日志的设计
- HDLC广域网协议设置
热门文章
- 加速ASP程序的显示速度
- 用户在电商网站中购买成功了,那么 TA 在微服务中经历了什么?
- 好文分享:我是如何在求职中把自己“推销”出去的
- 比学习新技术更重要的是思维的改变
- Spring Boot 2.x 启动全过程源码分析(全)
- 框架:SpringMVC中Interceptor拦截器的两种实现
- Andriod --- JetPack (三):ViewModel 的诞生
- jQuery-基本选择器的种类
- 商品和服务税收分类编码表_如何设置客户编码和商品编码?(附操作图)
- docker 容器restarting_FATE联邦学习docker-compose部署中的坑