SQL查询多个表的值相同

时间:2014-11-04 20:26:38

标签: sql oracle11g

我在创建查询时遇到问题。以下是具体细节。

  1. 有2个表company_career和company_people。
  2. 人员包含人员信息(姓名,地址等),职业包含历史职业信息(job_title,部门等)
  3. 人们通过job_ref_id链接到职业。
  4. Direct_Report_id位于职业表中,包含与job_ref_id相关的唯一ID。
  5. 示例:job_ref_id =' 1'结果是direct_report_id =' A'。然后我使用direct-report_id(即' A')生成的值并查询job_ref_id =' A'这会产生员工姓名。由于它产生了员工姓名(实际上是经理),我需要知道如何查询这个以将其作为经理名称。

1 个答案:

答案 0 :(得分: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
相关问题