2013-10-23 28 views
2

我不確定如何編寫標題。所以,這裏是:如何引用Oracle中的同一表中的其他行

我有一張醫生桌,每位醫生都有一位主管,也是醫生。

Name          Null? Type 
----------------------------------------- -------- ------------- 
DOC_ID         NOT NULL NUMBER(3) 
DOC_NAME           VARCHAR2(9) 
DATEHIRED           DATE 
SALPERMON           NUMBER(12) 
AREA            VARCHAR2(20) 
SUPERVISOR_ID          NUMBER(3) 
CHGPERAPPT           NUMBER(3) 
ANNUAL_BONUS          NUMBER(5) 

如果您注意到,有一個SUPERVISOR_ID,它也是不同行上的DOC_ID。我的問題是如何顯示每位醫生的主管名字?

+0

這是一個重複的問題,請參閱http://stackoverflow.com/a/7794899/599911 – Bulat

回答

3

嘗試這樣:

SELECT d1.*,d2.DOC_NAME 
FROM DOCTOR d1 
INNER JOIN DOCTOR d2 ON d1.SUPERVISOR_ID = d2.DOC_ID; 

你用相同的表執行INNER JOIN,和它的行爲,如果你是從不同的表中獲取的DOC_NAME

+0

謝謝!真的很感激它。 :) 原來我應該問的是如何執行自我加入。 – Shah

相關問題