|
回复 #21 mysqldbd 的帖子
select a.MeiShiID,a.Title,a.Picture,a.HitNum,a.MainMaterials2,a.Adminicle2,a.Spice2,a.HitNum
from a left join b on (a.MeiShiID=b.MeiShiID)
where b.GongXiaoID=1040700 AND Updated>'2011-03-05'and Updated<'2011-03-12' order by a.HitNum DESC LIMIT 0,10;
----------------------------------------------
这个是我原来的语句...where b.GongXiaoID=1040700 不就是相当于LEFT JOIN后 b.GongXiaoID IS NULL的行都被过滤,也就是A表中没左连接B表的行都没出现在最后结果中,那样的话,选择INNER JOIN而不是LEFT JOIN,会不会更好点?
顺便问下,mysql中,where后面的条件顺序是否对性能有影响?是否要将过滤量比较大的条件放在前面?我之前一直这样认为,但今天看到网文说对SQL sever没影响,oracle则需要,那mysql呢?
[ 本帖最后由 wanan_YLF 于 2011-3-14 16:14 编辑 ] |
|