显示没有经理的所有经理和员工

时间:2013-08-09 18:32:55

标签: sql sql-server-2008 self-join correlated-subquery

我在SQL Server 2008中有一个表,出于解释目的包含ID,Employee和ManagerID。

例如:

ID  Employee  ManagerID
1   A        NULL
2   B        2
3   C        2

我想写一个查询,返回所有不相关的ManagerIDID,其中ManagerID等于ID

结果应如下所示,

ID  Employee    ManagerID
1   A           NULL
2   B           2

实质上,没有经理可以成为经理的管理者。

起初我认为使用SELF Join和EXCLUDE SQL语句会很简单但是我不能让它工作。我不想使用EXCLUDE语句,因为我的实际表有更多列和相关数据,我想返回。

如果你能提供帮助,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

select employee, managerid
from your_table
where managerid is null 
or managerid = id