2014-11-04 188 views
0

我在創建查詢時遇到問題。以下是具體細節。SQL查詢多個表的相同值

  1. 有2張表company_career和company_people。
  2. 人們包含人員信息(姓名,地址等),職業包含歷史職業信息(job_title,department等)
  3. 人們通過job_ref_id鏈接到職業。
  4. Direct_Report_id位於職業表中,幷包含與job_ref_id相關的唯一ID。

例如:job_ref_id ='1'導致direct_report_id ='A'。然後,我使用從direct-report_id生成的值(即'A')並查詢job_ref_id ='A',並生成員工姓名。由於它產生員工姓名(實際上是經理),所以我需要知道我將如何查詢以將此作爲經理姓名顯示。

+2

請添加樣本數據和所需的結果。 – 2014-11-04 20:31:10

+0

這裏沒有什麼具體的東西..所有似乎都是猜測......針對樣本數據 – SriniV 2014-11-04 20:33:14

回答

0

我想我知道你在找什麼,你只需要使用連接和別名。例如:

SELECT 
cp.name AS [EmployeeName], 
cp.address AS [EmployeeAddress], 
cc.job_title AS [EmployeeTitle], 
cc.department AS [EmployeeDept], 
m.name AS [ManagerName] 
FROM company_people cp 
LEFT JOIN company_career cc ON cc.job_ref_id = cp.job_ref_id 
LEFT JOIN company_people m ON m.job_ref_id = cc.direct_report_id