Sql 在具有内部联接的特定列中包括包含空值的行

Sql 在具有内部联接的特定列中包括包含空值的行,sql,oracle,Sql,Oracle,这里的目标是返回每个员工的ID、姓名、经理姓名和ID。该表不包含经理姓名,仅包含给定员工的经理ID。当前查询使用内部联接非常有效,除了一个员工没有经理ID(他是老板),因此没有显示他的任何信息。当前查询如下所示: SELECT DISTINCT e.employee_id AS EMPLOYEE_ID, e.FULL_NAME AS EMPLOYEE_NAME, m.manager_ID AS REPORTS_TO,

这里的目标是返回每个员工的ID、姓名、经理姓名和ID。该表不包含经理姓名,仅包含给定员工的经理ID。当前查询使用内部联接非常有效,除了一个员工没有经理ID(他是老板),因此没有显示他的任何信息。当前查询如下所示:

SELECT DISTINCT e.employee_id AS EMPLOYEE_ID, 
                e.FULL_NAME AS EMPLOYEE_NAME, 
                m.manager_ID AS REPORTS_TO, 
                m.FULL_NAME AS MANAGER_NAME
FROM EMPS e
INNER JOIN EMPS m ON e.manager_id = m.employee_id;

尽管该员工缺少一个看似必要的字段,但我如何包括该员工的姓名和信息?如果您想在没有经理的情况下包含员工姓名,请执行“左加入”:

SELECT DISTINCT e.employee_id AS EMPLOYEE_ID, 
                e.FULL_NAME AS EMPLOYEE_NAME, 
                m.manager_ID AS REPORTS_TO, 
                m.FULL_NAME AS MANAGER_NAME
FROM EMPS e
LEFT JOIN EMPS m ON e.manager_id = m.employee_id;

当然为这个显而易见的问题道歉。。。。你真的需要这个数据集的
不同的
吗?这很好用!不知道为什么我不记得了。谢谢你的帮助!