我有一张桌子 表EMP( EMPNO号码(4), ENAME VARCHAR2(10), JOB VARCHAR2(9), MGR NUMBER(4), HIREDATE DATE, SAL号码(7,2), COMM NUMBER(7,2), DEPTNO NUMBER(2));
这是一个问题 您需要一份报告,列出员工姓名,经理姓名以及他们工作的部门名称。 MGR列存储EMPNO而不是名称。编写SELECT语句。
我该怎么写这个SELECT STATEMENT?
SELECT ENAME,MGR,DEPTNO,..... 来自EMP
答案 0 :(得分:0)
使用此查询获取员工的经理。
SELECT A.ENAME AS EMPLOYEE, B.ENAME AS MANAGER, A.DEPTNO AS DEPTNO
FROM EMP A, EMP B
WHERE A.MGR = B.EMPNO;
<强>插图:强>
EMP-1的经理是MGR-1,EMP-2的经理是MGR-2,MGR-1和MGR-2是他们自己的经理SELECT * from EMP;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
1 EMP-1 ADMIN 5 01-01-2000 2000.05 1000.05 10
2 EMP-2 ADMIN 4 01-02-2000 3000.05 3000.05 11
5 MGR-1 ADMIN 5 01-01-1995 9000.05 9000.05 9
4 MGR-2 ADMIN 4 01-05-1995 8000.05 8000.05 9
-- query output
EMPLOYEE MANAGER DEPTNO
MGR-1 MGR-1 9
EMP-1 MGR-1 10
MGR-2 MGR-2 9
EMP-2 MGR-2 11