/* Formatted on 2023-01-09 오후 9:36:08 (QP5 v5.215.12089.38647) */
--self조인 연습문제
--temp와 tdept를 이용하여 다음 컬럼을 보여주는 SQL을 만들어 보자.
--상위부서가 'CA0001'인 부서에 소속된 직원을 1.사번, 2.성명, 3.부서코드
--4.부서명, 5.상위부서코드, 6.상위부서명, 7.상위부서장코드, 8.상위부서장성명
--순서로 보여주면 된다.
SELECT * FROM temp;
SELECT * FROM tdept;
SELECT *
FROM temp
NATURAL JOIN
tdept
WHERE parent_dept = 'CA0001';
SELECT t.emp_id 사번,
t.emp_name 성명,
t.dept_code 부서코드,
td.dept_name 부서명,
td.parent_dept 상위부서코드,
td.dept_name 상위부서명,
td.boss_id 상위부서장코드
FROM temp t, tdept td
WHERE T.DEPT_CODE = td.dept_code AND parent_dept = 'CA0001';
SELECT a.emp_name, b.boss_id
FROM temp a, tdept b
WHERE b.parent_dept = 'CA0001' AND a.emp_id = b.boss_id;
SELECT a.emp_id 사번,
a.emp_name 성명,
b.dept_code 부서코드,
b.dept_name 부서명,
d.parent_dept 상위부서코드,
d.dept_name 상위부서명,
d.boss_id 상위부서장코드,
c.EMP_NAME 상위부서장명
FROM temp a,
tdept b,
temp c,
tdept d
WHERE a.dept_code = b.dept_code
AND b.parent_dept = D.dept_code
AND D.BOSS_ID = c.emp_id
AND d.dept_code = 'CA0001';
댓글