1) 레퍼런스 변수로 EID,ENAME,JCODE,SAL, DTITLE선언하고
    자료형 EMPLOYEE(EMP_ID,EMP_NAME,JOB_CODE,SALARY) , DEPARTMENT(DEPT_TITLE) 참조
    
    사용자가 입력한 사번에 해당하는 사원을 조회해서 각 변수에 대입한 후 출력 

DECLARE 
	EID EMPLOYEE.EMP_ID%TYPE;
    ENAME EMPLOYEE.EMP_NAME%TYPE;
    JCODE EMPLOYEE.JOB_CODE%TYPE;
    SALARY EMPLOYEE.SALARY%TYPE;
    DTITLE DEPARTMENT.DEPT_TITLE%TYPE;
BEGIN
	SELECT EMP_ID,EMP_NAME,JOB_CODE,SALARY,DEPT_TITLE
    INTO EID,ENAME,JCODE,SALARY,DTITLE
    FROM EMPLOYEE
    JOIN DEPARTMENT ON (DEPT_CODE = DEPT_ID)
    WHERE EMP_ID = &사번;
    
    DBMS_OUTPUT.PUT_LINE('EID : '|| EID);
    DBMS_OUTPUT.PUT_LINE('ENAME : '|| ENAME);
    DBMS_OUTPUT.PUT_LINE('JCODE : '|| JCODE);
    DBMS_OUTPUT.PUT_LINE('SALARY : '|| SALARY);
    DBMS_OUTPUT.PUT_LINE('DTITLE : '|| DTITLE);
    
END;
/

 

2) 특정사원의 사번, 이름, 부서명, 근무국가코드를 조회한후 변수에 대입하여 출력
단, 근무국가 코드가 'KO' 일 경우 TEAM 에 ' 국내팀'  아닐경우 '해외팀' 으로 출력

DECLARE
    EID EMPLOYEE.EMP_ID%TYPE;
    ENAME EMPLOYEE.EMP_NAME%TYPE;
    DTITLE DEPARTMENT.DEPT_TITLE%TYPE;
    NCODE LOCATION.NATIONAL_CODE%TYPE;
    TEAM VARCHAR2(10);
BEGIN
    SELECT EMP_ID,EMP_NAME,DEPT_TITLE,NATIONAL_CODE
    INTO EID,ENAME,DTITLE,NCODE
    FROM EMPLOYEE
    JOIN DEPARTMENT ON (DEPT_CODE = DEPT_ID)
    JOIN LOCATION ON (LOCATION_ID = LOCAL_CODE)
    WHERE EMP_ID = &사번;
    
    IF NCODE = 'KO'
    	THEN TEAM := '국내팀';
    ELSE 
    	TEAM := '해외팀';
    END IF;
    
    DBMS_OUTPUT.PUT_LINE('사번: ' || EID);
    DBMS_OUTPUT.PUT_LINE('이름: ' || ENAME);
    DBMS_OUTPUT.PUT_LINE('부서: ' || DTITLE);
    DBMS_OUTPUT.PUT_LINE('소속팀: ' || TEAM);
END;
/

 

3) 특정사원의 급여 조회해서 SAL변수에 대입, SAL에 담긴 값이 
   500만원 이상이면 '고급'
   300만원 이상이면 '중급'
   300만원 미만이면 '초급'
' 해당 사원의 급여 등급은 XX입니다 .' 형식으로 출력

DECLARE
	SALARY EMPLOYEE.SALARY%TYPE;
    GRADE VARCHAR2(10);
BEGIN
	SELECT SALARY
    INTO SALARY
    FROM EMPLOYEE
    WHERE EMP_ID = &사번;
    
	IF SALARY >=5000000 THEN GRADE :='고급';
    ELSIF SALARY >=3000000 THEN GRADE :='중급';
    ELSE GRADE = '초급';
    END IF;
    
    DBMS_OUTPUT.PUT_LINE('해당사원의 급여 등급은 ' || GRADE || '입니다.');
    
END;
/

 

복사했습니다!