gpt4 book ai didi

mysql - MySQl 中的多/级查询 - 是否需要额外的外键?

转载 作者:行者123 更新时间:2023-11-29 11:51:59 24 4
gpt4 key购买 nike

假设我有 3 个表:

  • 部门,每个部门有 0..n
    • 职位,每个职位有 0..n

给定一个部门,我如何找到在该部门工作的所有人员?我可以用一个 SELECT 来完成吗?

我已经设置了a fiddle有一些示例数据,但我无法制定正确的查询。

可以通过一些JOIN魔法来完成吗?或者我是否需要在 peeps 表中添加一个外键,指向 department_id

最佳答案

简单的连接

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 fiddle 上的示例表没有任何索引。添加这些对于性能非常重要。

关于mysql - MySQl 中的多/级查询 - 是否需要额外的外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33915611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com