2016-12-21 8 views
0

従業員の有無を問わず、すべての部門からDNAME、DEPTNOを選択したいとします。また、ある部門に従業員がいれば、ENAME、EMPNOを取得したいと思っています。従業員の有無に関わらず部門を選択します。割り当てられている場合は従業員も選択

私はこれを試してみました:選択e.empno、e.nameは、d.deptno、フルEMP eからd.dnameはe.deptno = d.deptno

上のdept D に参加しかし、それは動作しませんでした。

表構造: `:

DEPT 
DEPTNO DNAME 

EMP 
EMPNO ENAME DEPTNO 
+0

ヒントに表示されますその後、任意の従業員を持っていませんLEFT JOIN'と呼ばれる。 –

答えて

1

使用OUTER JOIN(LEFT/RIGHT)

SELECT D.DEPTNO, 
     D.DNAME, 
     E.EMPNO, 
     E.ENAME 
FROM DEPT D 
     LEFT OUTER JOIN EMP E 
        ON D.DEPTNO = E.DEPTNO 

DepartmentNULLE.EMPNOE.ENAME

0
SELECT 
DEPT.DEPTNO,DEPT.DNAME,EMP.EMPNO,EMP.NAME 
FROM 
DEPT LEFT OUTER JOIN 
EMP ON DEPT.DEPTNO = EMP.DEPTNO 
関連する問題