繁体   English   中英

SQL自联接在同一行

[英]SQL Self-join on the same line

我正在尝试创建一个报告,其中包含员工姓名以及他们的经理名字和姓氏。 我正在尝试自我加入。

  • 在ERD上有:
    • EMP_NUM是员工ID
    • EMP_LNAME - 员工姓氏
    • EMP_FNAME - 员工名字
    • EMP_MANAGER,它是经理ID(如果员工是经理,则经理ID与员工ID相同。)

我似乎无法成功编译。 我还在学习,所以任何帮助/提示都会很棒。 我正在使用Oracle SQL Developer。

 SELECT  EMPLOYEE.EMP_NUM "Employee ID",
 EMPLOYEE.EMP_LNAME "Employee First Name",
 EMPLOYEE.EMP_FNAME "Employee Last Name",
 EMPLOYEE.EMP_MANAGER "Managers ID for Employee",
 E2.EMP_LNAME as ManagerEMP_LNAME,
 E2.EMP_FNAME as ManagerEMP_FNAME
 FROM CARRM.EMPLOYEE
 left outer join CARRM E2 on EMPLOYEE.EMP_MANAGER = E2.EMP_NUM; 

在from中,您提到了表“Carrm.Employee”的名称,但在左外连接中,看起来您只提到了数据库“Carrm”的名称。 请尝试以下方法

SELECT  E1.EMP_NUM "Employee ID",
E1.EMP_LNAME "Employee First Name",
 E1.EMP_FNAME "Employee Last Name",
 E1.EMP_MANAGER "Managers ID for Employee",
 E2.EMP_LNAME as ManagerEMP_LNAME,
 E2.EMP_FNAME as ManagerEMP_FNAME
 FROM CARRM.EMPLOYEE E1
 left outer join CARRM.Employee E2 on E1.EMP_MANAGER = E2.EMP_NUM; 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM