Mysql-分页查询优化
来源:互联网 发布:smt贴片机编程 编辑:程序博客网 时间:2024/06/04 19:07
###分页查询优化
分页查询在 mysql 中常遇到,如以下语句
select * from TableName limit 100,20;
用时大约需要0.03 sec。用时很短。
但是随着偏移量的增加,查询时间也随之增加。比如如下代码:
select * from TableName limit 10000000,20
用时大约需要32.43 sec,这个时间是不是就有点长了了?可以优化吗?答案是可以的。那么,该怎样优化?
- 优化方法1
select * from TableName order by id limit 10000000,20;
用时大约需要17.71 sec,还是有点长。
- 优化方法2
select * from TableName where id >= (select id from TableName order by id limit 10000000,1) limit 20;
用时大约需要4.01 sec。
- 优化方法3
select * from TableName a, (select id from TableName where status=1 order by id limit 10000000,10) b where a.id=b.id
用时大约需要4.43sec。
- 优化方法4
select * from TableName as a inner join (select id from TableName order by id limit 10000000,20) as b on a.id=b.id order by a.id;
用时大约需要3.98sec。
可见优化方法2、优化方法3 和 优化方法4 运行时间差不多,相比于32.43 sec,效率提高八倍左右。
注:sql 语句中的 TableName指代的工作中一个有40000000多万记录的表。
0 0
- MySql分页查询优化
- Mysql-分页查询优化
- MySQL分页查询优化
- mysql分页查询优化
- MySQL分页查询优化
- MySQL分页查询及优化
- mysql 分页查询语句优化
- MySQL分页查询及优化
- MySQL分页查询以及优化
- mysql limit 分页查询优化
- MySQL 查询之分页优化
- MySql分页查询优化思路
- Mysql分页&关联查询优化
- MySQL 查询中的分页思路的优化
- mysql limit分页查询优化写法
- mysql的分页查询及优化
- mysql limit分页查询优化写法
- mysql limit分页查询优化写法
- 《C++ Primer Plus(第六版)》(26)(第十三章 类继承 复习题答案)
- 缺失值处理
- 由bayes滤波导出标准Kalman滤波
- 素数环问题
- 机器人的运动范围
- Mysql-分页查询优化
- 普通最大子段和
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- 理解 Keystone 的四种 Token
- 精通二叉排序树
- 使用urllib和BeautifulSoup怕取维基百科的数据
- Leetcode刷题记——32. Longest Valid Parentheses(最长有效括号)
- JAVA IO流的操作-----将一个文件夹中Html文件转为JSP文件
- java中异或^运算符的运用