sql - 如何从员工姓名中获取经理的姓名

标签 sql sql-server-2008 select

如何在此处找到经理姓名。每个经理也是员工。

EmpID  Name  ManagerId
  1     A       3
  2     B       1
  3     C       2
  4     D       5
  5     E       1

预期结果是这样的

EmpID  Name  ManagerName
  1     A       C
  2     B       A
  3     C       B
  4     D       E
  5     E       A

最佳答案

你必须使用 Left Join 来获得所需的输出..否则你会错过一些没有经理的员工..

SELECT e.empid, e.name Employee, ISNULL(e1.name,'') Manager
FROM   employee e
LEFT JOIN   employee e1 on e.managerid = e1.empid

关于sql - 如何从员工姓名中获取经理的姓名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39241947/

相关文章:

javascript - 制作不同大小的网格,并希望在用户选择一个选项后更改它们的大小

mysql - hive 使用从另一个表中选择的内容更新表列

python - 当任何表或行已更新时,mssql 是否可以通过任何方式通知我的 python 应用程序?

mysql - 使用另一个表中的列更新一个表中的时间戳列

sql-server - 帮助进行 sql 查询 - 计数

database - 如何优化数据库轮询

sql-server-2008 - 如何根据特定条件从所有表中获取行数

sql查询获取每个id的最新记录

mysql - JOIN MySQL 的表结果中未包含 SUM 信息的子查询

mysql - 让 SQL 与选择表单元素一起使用,以逗号分隔