--문제1. 다음의 메세지를 출력하시오.
--SQL 응용
--ㅇㅇㅇ
--문제2.
--SELECT문으로 EMP테이블에서
--TURNER의 사원번호, 이름, 부서번호 조회
SET SERVEROUTPUT ON;
DECLARE
SONNO EMP.EMPNO%TYPE;
SONNAME EMP.ENAME%TYPE;
SONDEPTNO EMP.DEPTNO%TYPE;
BEGIN
SELECT EMPNO, ENAME, DEPTNO INTO SONNO, SONNAME, SONDEPTNO
FROM EMP
WHERE ENAME = 'TURNER';
DBMS_OUTPUT.PUT_LINE('사원번호 이름 부서번호');
DBMS_OUTPUT.PUT_LINE('-------------------------');
DBMS_OUTPUT.PUT_LINE(''||SONNO||''||SONNAME||''||SONDEPTNO);
END;
/
--문제3.
--다중IF..THEN..ELSIF..ELSE문을 이용하여
--TURNER의 사원번호, 이름, 부서번호, 부서명 조회
SET SERVEROUTPUT ON;
DECLARE
SONEMP EMP%ROWTYPE;
SONSNAME VARCHAR2(14);
BEGIN
SELECT * INTO SONEMP
FROM EMP
WHERE ENAME = 'TURNER';
IF(SONEMP.DEPTNO = 10) THEN
SONSNAME := 'ACCOUNTING';
ELSIF(SONEMP.DEPTNO = 20) THEN
SONSNAME := 'CLERK';
ELSIF(SONEMP.DEPTNO = 30) THEN
SONSNAME := 'SALES';
ELSIF(SONEMP.DEPTNO = 40) THEN
SONSNAME := 'OPERATIONS';
END IF;
DBMS_OUTPUT.PUT_LINE('사원번호 이름 부서번호 부서명');
DBMS_OUTPUT.PUT_LINE('-------------------------------');
DBMS_OUTPUT.PUT_LINE(''||SONEMP.EMPNO||''||SONEMP.ENAME||''||SONEMP.DEPTNO||''||SONSNAME);
END;
/
--문제4.
--WHILE문을 사용하여 1부터 200까지 합을 구하기
SET SERVEROUTPUT ON;
DECLARE
NUM NUMBER := 0;
N_SUM NUMBER := 0;
BEGIN
WHILE (NUM < 200) LOOP
NUM := NUM + 1;
N_SUM := N_SUM + NUM;
END LOOP;
DBMS_OUTPUT.PUT_LINE('1부터 200까지의 합');
DBMS_OUTPUT.PUT_LINE('****************');
DBMS_OUTPUT.PUT_LINE(N_SUM);
END;
/
댓글