语句大概为
select sum(...), sum(...), [...约15个]
from A
left join B on ...
left join C on ...
left join D on ...
[...约6个]
where C.[...] <= D.[...]
group by A.[...], B.[...]注:...为省略问题如下
若将 where 一行代码去除,查询时间为 <= 2秒
加入 where 一行代码,查询时间为 1分20秒~1分22秒
求助各位 大侠,望不吝赐教原因及解决方法,拜谢!
select sum(...), sum(...), [...约15个]
from A
left join B on ...
left join C on ...
left join D on ...
[...约6个]
where C.[...] <= D.[...]
group by A.[...], B.[...]注:...为省略问题如下
若将 where 一行代码去除,查询时间为 <= 2秒
加入 where 一行代码,查询时间为 1分20秒~1分22秒
求助各位 大侠,望不吝赐教原因及解决方法,拜谢!
+ where 1分20秒 +
- where 2秒 -
where 是對以上條件產生的副表進行再次篩選
所以兩次的效率不一樣
結果應該也不一樣
不知道這樣解釋合理不
条件里加上 原 where 的条件 时间就变成 1分20秒 + ,不加就 < 2秒
where 條件 放到 on後面
把where 去掉 得到結果是一樣的