有人可以解释为什么以下 SQL 中有两个不同的结果集。
SQL 1-
SELECT e.employee_id,e.first_name,
e.department_id,
d.department_id,
d.department_name
FROM employees e RIGHT OUTER JOIN departments d
ON (e.department_id = d.department_id) where d.department_name='Treasury';
结果:仅 d.department_name='Treasury' 的记录。
SQL 2-
SELECT e.employee_id,e.first_name,
e.department_id,`enter code here`
d.department_id,
d.department_name
FROM employees e RIGHT OUTER JOIN departments d
ON (e.department_id = d.department_id) and d.department_name='Treasury';
结果:包含所有 d.deparment_name 值的记录。