본문 바로가기
국비학원/숙제

DAY31_오라클 연습문제

by 루팽 2023. 1. 9.
/* 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';

'국비학원 > 숙제' 카테고리의 다른 글

DAY28_오라클 연습문제  (0) 2023.01.04
DAY27_오라클 연습문제  (0) 2023.01.03
DAY26_오라클 연습문제  (0) 2023.01.02
Day19_중복체크  (0) 2022.12.27
Day18_단순연산 계산기  (0) 2022.12.27

댓글