- 关联表后添加的条件无论关联表中是否数据,主表有数据就会查出而不会过滤。
- 而在where中添加关联表的条件,则会查看是否主表是否关联有数据,再进行过滤。
例如:SELECT COUNT(*) AS total
FROM sys_dept dept
LEFT JOIN sys_dept_dispatch sddis ON sddis.pro_dept_id = dept.dept_id and sddis.del_flag = '0'
WHERE dept.del_flag = '0'
AND dept.dept_type IN (3,4)
若把‘and sddis.del_flag = '0'’挪到where中,那么如果关联表中没有del_flag='0'的数据,则整个结果集就没有数据