假设我有3张桌子:
鉴于某个部门,我如何让所有在该部门工作的人员?我可以用一个SELECT来做吗?
我已将a fiddle设置为一些示例数据,但我无法制定正确的查询。
可以用一些JOIN
魔法来完成吗?或者我是否需要在peeps
表中添加外键,并指向department_id
?
答案 0 :(得分:1)
一个简单的连接
SELECT people.*
FROM departments
INNER JOIN jobs ON departments.deperatment_id = jobs.deperatment_id
INNER JOIN people ON jobs.job_id = people.job_id
WHERE departments.deperatment_id = 1
您需要将连接条件中的列名修改为表中使用的列名。
请注意,SQL小提琴上的示例表没有任何索引。添加这些对性能非常重要。