select attr1, attr2, ....
from A
left join B on ....
left join C on ....
left join ....
where ..
order by A.id
LIMIT ....左表A 不到9k条记录  连接了大概五六个表。 在无任何where条件时,查询要20s以上如果有对A的where查询, 查询结果就大大缩短
我没找到官方解释, 应该是对左表的where会在表连接之前被执行吧。
如果没有对A的where, 有对B, C等的where, 查询依然很费时。因为要求有A表的全记录,所以不能改用Inner join。所以这里遇到了优化的难题。
除了想到如果无查询条件时 先对A limit查询生成子表 然后再表连接 ,没有想到其他的优化办法。大家有啥建议不? 谢谢!
MySQLleft join 优化