重新描述下问题:
-----------------------查询一----------------------
select .... from A
left join B
on A.id=B.id
-----------------------查询二----------------------
select .... from A
left join (
(select .... from B)B1 union all (select ... from C)C1 on B1.id=C1.id
)B2
on A.id=B2.id
数据量:A=4百万条,B=5百万条,C=10条
这两个句子执行效率差别非常大:
查询一:15秒左右
查询二:3分种左右
请高手指点 有没有好的优化方法?