相关疑难解决方法(0)

SQL查询一对多的关系

我有一个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 join

15
推荐指数
1
解决办法
7万
查看次数

SQL操作顺序

如果我运行以下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

sql optimization join where sql-execution-plan

10
推荐指数
3
解决办法
8970
查看次数

标签 统计

join ×2

sql ×2

optimization ×1

sql-execution-plan ×1

where ×1