-1
 i have 3 tables (employee,structure,District)

 1_employee table contains  empid,workid  and actuallwork  fks to structid 
 2_ structure table contains structid , districtId fk to district
 3_District table contains districtid , districtname

我想得到

empid  ,  work 

, 实际工作(来自外键实际工作的地区名称)

4

1 回答 1

1

您可以在查询中多次使用同一个表,前提是您为每次出现都提供了不同的别名。结构和地区列出了两次,第一次是工作/地区,第二次是实际工作/实际地区。这就是在处理对同一个表的多个引用时区分列的来源的方式。

select employee.empid,
       district.districtname,
       actualdistrict.districtname acturaldistrictname
  from employee
    inner join structure work
       on employee.workid = work.structid
    inner join district
       on work.districtfk = district.districtid
    inner join structure actualwork
       on employee.actuallworkfk = actualwork.structid
    inner join district actualdistrict
       on actualwork.districtfk = actualdistrict.districtid
于 2012-04-08T23:22:32.267 回答