SQL:选择关联的值

时间:2012-11-21 06:35:12

标签: sql

我有一个带有EMPLOYEES表的数据库,该表包含以下列:

(EmpID    char(4) unique Not null,
 Ename    varchar(10),
 Job      varchar(9),
 MGR      char(4),
 Hiredate date,
 Salary   decimal(7,2),
 Comm     decimal(7,2),
 DeptNo   char(2) not null,
     Primary key(EmpID),
     Foreign key(DeptNo) REFERENCES DEPARTMENTS(DeptNo));

使用示例INSERT:

insert into EMPLOYEES values (7654,'Martin','Salesman',7698,'28-Feb-12',1250,1400,30);

我无法弄清楚如何按经理姓名列出所有员工及其经理。我不知道如何显示经理名称,只是数字。

1 个答案:

答案 0 :(得分:0)

评论中的查询错误,因为它在Ename上执行JOIN

试试这个:

SELECT 
  manager.Ename as 'Manager Name'
  , e.Ename as 'Employee Name' 
FROM 
  Employees e
  JOIN Employees manager on e.MGR = manager.EmpID;

您的原始查询在名称上加入了表格。您应该将MGR ID绑定到EmpID以查找经理。