gpt4 book ai didi

MySQL 在多个表上选择联接

转载 作者:行者123 更新时间:2023-11-29 10:36:32 25 4
gpt4 key购买 nike

我有多个表(tbldept、tblcourse、tblstud、tblviolation),我想提取特定值。下面的表格与我的表格相同

tbldept
id | dept
1 | deptA
2 | deptB

tbldepttblcourse 上有外键

tblcourse
id | deptId | course
1 | 2 | courseA
2 | 1 | courseB
3 | 1 | courseC

tblcoursetblstud 上有外键

tblstud
id | courseId | name
1 | 1 | studA
2 | 2 | studB
3 | 1 | studC

tblstudtblviolation 上有外键

tblviolation
id | studId | violationName
1 | 3 | violationA
2 | 2 | violationB
3 | 1 | violationC
4 | 3 | violationC

*我想要得到的是这样的:*

dept | studId | name   | violationName
2 | 1 | studA | violationC
2 | 2 | studB | violationB
1 | 3 | studC | violationA
1 | 3 | studC | violationC

我想获取每个 studId 的所有 tblviolation 行。我希望你们能理解我想解释的内容。 =)谢谢。

最佳答案

您只需要内部联接。试试这个。

select d.dept,s.studid,s.name,v.violationname
from tbldept d
inner join tblcourse c
on d.id=c.deptid
inner join tblstud s
on c.id=s.courseid
inner join tblviolation v
on s.id=v.studid

关于MySQL 在多个表上选择联接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46312442/

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