2016-05-14 78 views
0

我想對以下兩個表進行左連接並將其與另一個錶鏈接加入兩個表並鏈接第三個表

例如, 我有一個名爲表學生

SID (pk) 
fname 
lname 

分配表

aid (pk) 
dur 
SID (fk) 
pid (fk) 

教授表

pid (pk) 
pname 

我將採取fname第一個表pid第二個表left join他們和顯示相應的pnameprofessor table

所以我想表看起來像這樣以後

Fname Pname 

Raju Jack 
RAm Null 
jim john 

感謝

我寫這樣的代碼,但它不工作

select students.fname, professor.pname 
from student 

LEFT JOIN professor ON professor.pid = assignment.pid 

我想做的事左連接,所以我會得到fname和pid,但是我想用pid來獲取pname並顯示fname和pname

+0

你有什麼問題?我們不會爲你寫,但我們會幫你修復你的代碼。 – Barmar

+0

我已經離開加入了學生和分配表 所以現在我有
FNAME PID
拉朱012
RAM空
吉姆025
所以我現在想使用PID和教授表找到PNAME只有顯示fname和pname – user17422

+1

只需將'LEFT JOIN教授添加到professor.pid = assignment.pid'即可。 – Barmar

回答

0

如果你想要這樣的輸出,你可以做一件事。 而不是使用左連接,你可以使用簡單的連接。 我已經檢查過,所以試試這段代碼。

select s.fname, p.p_name 
from students s 
join assignment a on s.s_id = a.s_id 
join professor p on a.p_id = p.p_id 

希望你能得到正確的結果。

+0

如果你看看預期的結果('RAm Null'),你會看到OP需要一個LEFT JOIN。 –

+0

我希望創建一個分配和教授表的視圖與列援助,SID,PNAME和結合他們爲assignment.pid = professor.pid。 後來我會在視圖上使用學生表的左連接.... 你們認爲什麼?請在你的想法鐘聲.... 謝謝 – user17422

0

我希望能創建一個帶有列幫助,sid,pname的賦值和教授表的視圖,並將它們組合爲assignment.pid = professor.pid。

後來我就用左視圖上的學生表進行連接....

你們有什麼覺得?請在你的想法鐘聲....
謝謝

相關問題