Mysql多个LEFT JOIN使用ORDER不能使用索引导致查询过慢的解决方案
来源:互联网 发布:mac里的视频导出到u盘 编辑:程序博客网 时间:2024/05/22 00:35
MySQL在多个LEFT JOIN的情况下使用ORDER BY排序,就算是其中一个表的主键也仍然使用file sort排序,数据量多的话就相当的慢。
优化前语句
SELECT * FROM a LEFT JOIN b ON a.id=b.a_id ORDER a.id DESC
优化后语句
SELECT * FROM a LEFT JOIN b ON a.id=b.a_id JOIN (SELECT id FROM a ORDER BY id DESC) a_order ON a.id = a_order.id
实际工作中100W+的几个表使用LEFT JOIN要20分钟才能得到结果,语句优化后3秒。
阅读全文
0 0
- Mysql多个LEFT JOIN使用ORDER不能使用索引导致查询过慢的解决方案
- Mysql多个LEFT JOIN使用ORDER不能使用索引导致查询过慢的解决方案
- Mysql多个LEFT JOIN使用ORDER BY不能使用索引导致查询过慢的解决方案
- Mysql多个LEFT JOIN使用ORDER不能使用索引解决方案
- Mysql多个LEFT JOIN使用ORDER不能使用索引解决方案
- mysql left join的使用
- MySQL查询--使用LEFT JOIN解决同一张表查询
- 【已解决】mysql left join使用不了索引问题
- Mysql 多个子查询 多个LEFT JOIN 视图创建
- Mysql 多个子查询 多个LEFT JOIN 视图创建
- MYSQL使用索引导致查询变慢的例子
- mysql多个left join
- 关于自定义函数导致SQL查询过慢的解决方案
- mysql使用left join等表连接查询时需注意的情况
- mysql left( right ) join使用on 与where 筛选的差异 博客分类: mysql MySQLSQL数据结构 有这样的一个问题mysql查询使用mysql中left(
- 【MySQL】MySQL中链接查询inner join与left join使用
- MySQL Order By 使用索引的情况
- slick 中使用left join查询多表
- VideoView播放视频
- LINUX内核进程调度学习笔记(一)
- Python:深拷贝,浅拷贝import copy
- 图解转载 原创代码适合新手入门
- Qt开源参考项目 收集
- Mysql多个LEFT JOIN使用ORDER不能使用索引导致查询过慢的解决方案
- linux jdk的环境变量配置
- [StackExchage]Redis 的连接与操作(跨机器)
- Java学习笔记-《Java程序员面试宝典》-第5章Java Web-5.3框架(5.3.14-5.3.15)
- AndroidStudio中使用Git上传项目到github
- AS-package name does not correspond to the file path
- 资源分享:嵌入式stm32项目开发 心率检测仪的设计与实现
- ^=^笑脸
- 在MyBatis的select、insert、update、delete这些元素中都提到了parameterType这个属性。MyBatis现在可以使用的parameterType有基本数据类型和Ja