在同一个表上访问SQL Query

时间:2014-07-31 18:23:25

标签: sql ms-access

我有两个表:一个名为EMP_Names,它只存储ID和Employee_Name,另一个名为EMP_Main的表存储主数据,并通过ID引用EMP_Names。在其他字段中,EMP_Main具有名为Technician_Name_ID和Leader_Name_ID的字段,其与EMP_Names相关。我的问题是这样的:如何运行查询,其中Technician_Name_ID和Leader_Name_ID都解析为Names?换句话说,两个ID字段都引用相同的EMP_Names.ID,但我只能在两个表之间建立一个关系。

不知道我是否清楚,因为很难解释......

1 个答案:

答案 0 :(得分:0)

您可以使用join,但需要多个联接。

select em.*, ent.name as technician, enl.name as leader
from (emp_main as em left join
      emp_names as ent
      on em.technician_name_id = ent.id
     ) left join
     emp_names as enl
     on em.leader_name_id = enl.id;

如果没有为所有行填充字段,则这些是left join