CREATE TABLE CHAP10HW_SALGRADE AS SELECT * FROM SALGRADE;
CREATE TABLE CHAP10HW_EMP AS SELECT * FROM EMP;
CREATE TABLE CHAP10HW_DEPT AS SELECT * FROM DEPT;
이 세 테이블을 만들고 시작하세요!!
1)
CHAP10HW_DEPT 테이블에
50,60,70,80 부서를 등록하는 SQL문을 작성하세요
--첫번째
INSERT INTO CHAP10HW_DEPT
(DEPTNO, DNAME, LOC)
VALUES (50,'ORACLE','BUSAN')
;
--두번째
INSERT INTO CHAP10HW_DEPT
VALUES (60,'SQL','ILSAN')
;
--세번째
INSERT INTO CHAP10HW_DEPT
VALUES (70,'SELECT','INCHEON')
;
--네번째
INSERT INTO CHAP10HW_DEPT
VALUES (80,'DML','BUNDANG')
;
결과
2)
다음과 같이 CHAP10HW_EMP 테이블에
다음 8명의 사원 정보를 등록하는 SQL문을 작성하세요
INSERT INTO CHAP10HW_EMP
(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO)
SELECT 7201,'TEST_USER1','MANAGER',7788,'2016-01-02',4500,NULL,50 FROM DUAL
UNION ALL
SELECT 7202,'TEST_USER2','CLERK',7201,'2016-02-21',1800,NULL,50 FROM DUAL
UNION ALL
SELECT 7203,'TEST_USER3','ANALYST',7201,'2016-04-11',3400,NULL,60 FROM DUAL
UNION ALL
SELECT 7204,'TEST_USER4','SALESMAN',7201,'2016-05-31',2700,300,60 FROM DUAL
UNION ALL
SELECT 7205,'TEST_USER5','CLERK',7201,'2016-07-20',2600,NULL,70 FROM DUAL
UNION ALL
SELECT 7206,'TEST_USER6','CLERK',7201,'2016-09-08',2600,NULL,70 FROM DUAL
UNION ALL
SELECT 7207,'TEST_USER7','LECTURER',7201,'2016-10-28',2300,NULL,80 FROM DUAL
UNION ALL
SELECT 7208,'TEST_USER8','STUDENT',7201,'2018-03-09',1200,NULL,80 FROM DUAL
;
결과
3)
CHAP10HW_EMP에 속한 사원 중
50번 부서에 근무하는 사원들의 평균급여보다
많은 급여를 받고 있는 사람들을 70번 부서로 옮기세요
UPDATE CHAP10HW_EMP
SET DEPTNO=70
WHERE DEPTNO=50 AND SAL>(
SELECT AVG(SAL)
FROM CHAP10HW_EMP
WHERE DEPTNO=50)
;
결과
4)
CHAP10HW_EMP에 속한 사원 중
60번 부서의 사원 중에 입사일이 가장 빠른 사람 보다
늦게 입사한 사원의 급여를 10% 인상하고, 80번 부서로 옮기세요
UPDATE CHAP10HW_EMP
SET DEPTNO=80, SAL=SAL+(SAL*0.1)
WHERE HIREDATE > (
SELECT HIREDATE
FROM CHAP10HW_EMP
WHERE DEPTNO=60)
;
결과
5)
CHAP10HW_EMP에 속한 사원 중,
급여 등급이 5인 사원을 삭제하는 SQL문을 작성하세요
DELETE FROM CHAP10HW_EMP
WHERE EMPNO IN
(SELECT EMPNO
FROM CHAP10HW_EMP, SALGRADE
WHERE SAL BETWEEN LOSAL AND HISAL
AND GRADE=5)
;
728x90
'문제를 풀어보자' 카테고리의 다른 글
Optional ) Null을 다루는 문제 (0) | 2023.01.05 |
---|---|
ORACLE) Do it! 오라클 9강 연습문제 (0) | 2022.10.21 |
ORACLE) Do it! 오라클 8강 연습문제 (0) | 2022.10.20 |
ORACLE) Do it! 오라클 6강 연습문제 (0) | 2022.10.20 |
JAVA) 자바의 정석 기초편 11-4 연습 문제(Comparator 정렬) (0) | 2022.10.14 |