【MySql LeftJoin On 与 Where的差异】
存在两张表:
分别插入数据:
下面的语句一与语句二会产生不同的结果:
语句一:
结果:
语句二:
结果:
为什么会存在差异,这和on与where查询顺序有关。
标准查询关键字执行顺序为 from->where,left join 是在from范围类所以 先on条件筛选表,然后两表再做left join。
而对于where来说在left join结果再次筛选。
参考:http://blog.csdn.net/chenshangan/article/details/6861625