2016-03-01 110 views
0

我需要幫助優化此SQL查詢。SQL查詢查找表記錄是同一表的一部分

我有一個表叫Student有以下欄目:

id; Department_Name; Parent_Department

值如:

id Department_Name Parent_Department 
1  IT_CS  
2  IT_BP  
3  IT_NP  
4  IT1    1  
5  IT2    1  
6  IT3    3  
7  IT4  
8  IT9    2 

我需要的是讓從表中的所有id其中parent_department = IT_CS; 爲了這個,我正在寫2查詢

  1. select id from student where Department_Name ='IT_CS';

  2. select id from student where parent Parent_Department =Id從上面的查詢進賬;

有沒有更好的方法來做到這一點?

回答

0

您可以使用加入這樣

select id,Department_Name,Parent_Department 
from student as a 
inner join student as b on a.parent_Department= b.id 
where b.Department_Name='IT_CS' 
0

自連接語句是專門爲了這個目的,

SELECT * 
FROM STUDENT S 
JOIN STUDENT S1 ON S.PARENT_DEPARTMENT = S1.ID 
WHERE S1.DEPARTMENT_NAME = 'IT_CS' 
相關問題