2017-07-26 57 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指導方針。 –