2017-04-10 95 views
0

我確實閱讀了很多文章,但我無法準確找到我想要的內容。如果這個問題得到解答,我對雙重發帖表示歉意。將結果匹配到一個新的結果列

我正在使用SQL 2012並拉動一個非常基本的查詢。我遇到的問題涉及必須根據查詢結果從相同的列中選擇兩次。

SELECT 
emp_id[ID] 
emp_fname[FirstName], 
emp_lname[Lastname], 
emp_supervisor[Supervisor] 
FROM empmst 
WHERE 
emp_act_stat = 'A' 

emp_supervisor只返回管理員的ID。
我需要從emp_fname和EMP_NAME列也只如果有匹配的主管ID到一個新的結果列[督導名稱]拉

我的猜測是,這將需要一個子查詢,但我不知道的語法。

回答

2

一個簡單LEFT JOIN會做:

SELECT 
     e1.emp_id [ID] 
     e1.emp_fname [FirstName], 
     e1.emp_lname [Lastname], 
     e1.emp_supervisor [IDSupervisor], 
     e2.emp_fname [FirstName_Supervisor], 
     e2.emp_lname [Lastname_Supervisor] 
FROM empmst e1 
LEFT JOIN empmst e2 
    ON e1.emp_supervisor = e2.emp_id 
WHERE 
e1.emp_act_stat = 'A';