需要帮助mysql加入表

时间:2017-07-26 00:38:09

标签: mysql

我有4张桌子并希望加入

学生

id   student_name   angkatan

s_1  yan            a_1
s_2  teo            a_1
s_3  mirna          a_2

angkatan

id  angkatan   name

a_1 angkatan   1
a_2 angkatan   2

sub

id     sub_name  payment

sub_1  bag       1000
sub_2  book      2000

恢复

id   angkatan    sub
1    a_1         sub_1
2    a_1         sub_2
3    a_2         sub_2
从恢复表

我想要新表有这样的结果 如果在表格中恢复它说angkatan = ang_1它将选择所有学生与angkatan = ang_1与sub

nim name   angkatan  sub
s_1 iyan   a_1       bag
s_2 teo    a_1       bag
s_1 iyan   a_1       book
s_2 teo    a_1       book
s_3 mirna  a_2       book

怎么做?我尝试但仍然无法找到如何

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

根据上面分享的表格及其值,获取angkatan = 'a_1'所需结果的查询将如下所示

SELECT      STU.ID AS NIM, 
            STU.STUDENT_NAME AS NAME, 
            STU.ANGKATAN, 
            SUB.SUB_NAME AS SUB 
FROM        STUDENT STU 
LEFT JOIN   ANGKATAN ANG
ON          STU.ANGKATAN = ANG.ID
LEFT JOIN   RESUME RES
ON          RES.ANGKATAN = ANG.ID
LEFT JOIN   SUB SUB
ON          RES.SUB = SUB.ID
WHERE       RES.ANGKATAN = 'a_1'
ORDER BY    STU.ID

希望这有帮助。