2017-07-26 80 views
-2

我有4个表,并想加入它需要帮助MySQL的加入表

学生

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 

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与子

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 

该怎么办?我想,但仍然couldnot发现如何

感谢您的帮助

+0

你能附上你到目前为止尝试过的吗? –

+0

等待,我试图用angkatan和子与恢复 –

+0

SELECT sub_bayar.kode,sub_bayar.nama,sub_bayar.tagihan,sub_bayar.tagihan 加入学生从sub_bayar INNER JOIN resume_sub ON sub_bayar.kode = resume_sub.kode 也mahasiswa和angkatan,但不知道如何加入4表 –

回答

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 

希望这有助于。

+0

thx aniket它非常有用 –

+0

如果答案帮助你解决了这个问题,你应该接受(点击“滴答”标志)答案根据SO指导方针。 –