我有一个Employees表和另一个Training表.培训表包含员工已完成的各种培训课程.我们有强制性的安全意识培训,因此每位员工都必须完成此培训课程.我在运行查询时遇到问题,该查询将返回列出完成培训的所有员工.
示例员工表
?????????????
? ID ? NAME ?
?????????????
? 1 ? Bob ?
? 2 ? Tom ?
? 3 ? John ?
?????????????
Run Code Online (Sandbox Code Playgroud)
示例培训表
??????????????????????????????????????????
? ID ? DEPARTMENT_ID? CLASS ?
??????????????????????????????????????????
? 1 ? 1 ? Security Awareness ?
? 2 ? 1 ? Workplace Safety ?
? 3 ? 2 ? Security Awareness ?
??????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
目标结果
??????????????????????????????????
? ID ? NAME ? CLASS ?
??????????????????????????????????
? 1 ? Bob ? Security Awareness ?
? 2 ? …Run Code Online (Sandbox Code Playgroud) 如果我运行以下SQL查询
SELECT *
FROM A
LEFT JOIN B
ON A.foo=B.foo
WHERE A.date = "Yesterday"
Run Code Online (Sandbox Code Playgroud)
请问WHERE声明得到之前或之后的评价JOIN?
如果之后,什么是更好的方式来编写此语句,以便只返回A从中的行"Yesterday"连接到B?