2012-10-10 82 views
1

我拖表第一D001有兩個關口:左加入對山坳多山坳

ACC_ID, ACC_NAME 
     |   | 
     |   | 
     |   | 

的謝勝利,D002有四個關口

DATE ACC_ID_1, ACC_ID_2, ACC_ID_3, ACC_ID_4 
    |  |   |   |   |  
    |  |   |   |   | 
    |  |   |   |   | 

我怎樣才能使視圖包含

DATE, ACC_NAME1, ACC_NAME_2, ACC_NAME_3, ACC_NAME_4 
    |   |   |   |   |  
    |   |   |   |   | 
    |   |   |   |   | 

我嘗試左連接,但結果只是一個列!

回答

3

您需要加入總共4次!

select t.date, 
     a.acc_name acc_name1, 
     b.acc_name acc_name2, 
     c.acc_name acc_name3, 
     d.acc_name acc_name4 
from d002 t 
left join d001 a on a.acc_id = t.acc_id_1 
left join d001 b on b.acc_id = t.acc_id_2 
left join d001 c on c.acc_id = t.acc_id_3 
left join d001 d on d.acc_id = t.acc_id_4 

話雖如此,你應該看看在你的下次機會重新訪問表結構時將數據標準化爲4行。

+0

非常thx它的工作很好 –