作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
谁能解释一下为什么在下面的 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 值。
最佳答案
on
条件用于在联接表中查找匹配的行。使用外连接(右连接或左连接),不匹配 on
条件的行仍可能出现在结果集中。
where
条件应用于所有选定的行。任何未通过 where
测试的行都将从结果集中排除。
关于sql - 联接中 WHERE 和 AND 子句的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15065077/
我是一名优秀的程序员,十分优秀!