mysql联表查询优化技巧


执行以下sql:

explain select gc.*, g.title from  t_goods g , t_goods_cover gc where g.goods_id = gc.goods_id and g.category_id = 44 ;

 

explain 默认第一行出现的表就是驱动表,由查询优化器自动选择,影响的rows是9462行,查询效率很低

 

 

 

#关联查询优化要点
#1. 外键上加索引
create index idx_goods_id on t_goods_cover(goods_id);
#2. 查询条件上加索引
create index idx_category_id on t_goods(category_id);

优化后同样的sql查询结果,驱动表的影响行数rows下降到74,查询效率大大提高了

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM