本文主要是介绍Mysql中filesort优化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
用Explain分析SQL语句的时候,经常发现有的语句在Extra列会出现Using filesort,根据mysql官方文档对他的描述:
中文手册上翻译的很别扭:
Using filesort 是Mysql里一种速度比较慢的外部排序,尽量避免!
当where条件和order by同时出现时,如果where中字段A使用了索引,而order by的字段是B,查看执行计划时,就会出现filesort文件排序。
解决这个问题就是建立一个包含 WHERE 和 ORDER BY 条件的混合索引。
比如:
建立一个sid和type的联合索引
再次查看执行计划:
filesort已经消失了!
这篇关于Mysql中filesort优化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!