sql 描述:通过订单明细表关联订单项表和商品表
SELECT * from order_info
left join order_item on order_info.id = order_item.order_num
left join goods on goods.id = order_item.goodsId
where order_info.id = 1;
explain执行发现会对goods表做全表扫描? 为什么会这样,我理解会拿order_item.goodsId 去goods表中查?
各位大佬有没有什么优化方案
去goods表中去查那不也得是全表查嘛...给条件字段加个索引试一下,应该就不是全表了。
这个功能是后台统计用?建议加上条件过滤缩小扫描范围,比如时间(时间加上索引),分页(limit)等