2014-02-14 111 views
0

我有在MySQL兩個表,MySQL的檢索數據

第一種是這樣的:

ID INFO1 INFO2 INFO3 INFO4 INFO5 
1 abc cde fgh ecc ecc 
2 xxx yyy zzz ecc ecc 
3 abc cde fgh ecc ecc 
4 abc cde fgh ecc ecc 

第二個是這樣的:

ID1 ID2 INFO_F 
1 2 10 
2 3 23 
3 1 61 
. . . 

在哪裏ID1和ID2是第一個表的相同ID。

現在我需要第三個表是這樣的:

INFO1_ID1 INFO1_ID2 INFO2_ID1 INFO2_ID2 INFO3_ID1 INFO3_ID2 INFO_F 
    abc  xxx  cde  yyy  fgh  zzz  10 

在表2中的所有記錄。

我希望很清楚...

在此先感謝您的幫助!

回答

0

你應該加入同一個表兩次。

SELECT t11.*,t12.*,t2.* FROM t2 
LEFT JOIN t1 as t11 ON t1.ID = t2.ID1 
LEFT JOIN t1 as t12 ON t12.ID = t2.ID2 
+0

感謝它就是我正在尋找!!!!! – inzirio

0

我想你可以使用連接,只要你特別命名結果和表格。這可能會幫助你(你需要:

SELECT 
    id1, id2, info_f, 
    tb1a.id AS id1fromtb1, tb1a.INFO1 as info1fromtb1, 
    tb1b.id, tb1b.INFO1 
FROM table2 
JOIN table1 as tb1a on table2.id1=tb1a.id 
JOIN table1 as tb1b on table2.id2=tb1b.id 

http://sqlfiddle.com/#!2/f0744/4