본문 바로가기

IT/오라클

Oracle PL/SQL 강좌 5.1.1. FOR LOOP

FOR LOOP 문법

  • index 는 자동 선언되는 binary_integer형 변수이고, 1씩 증가 한다.
  • reverse 옵션이 사용 될 경우 index 는 upper_bound에서 lower_bound로 1씩 감소 한다.
  • IN 다음에는 coursor나 select 문이 올 수 있다.

FOR LOOP 예제

 
    DECLARE

    -- 사원 이름을 출력하기 위한 PL/SQL 테이블 선언 
    TYPE ename_table IS TABLE OF emp.ename%TYPE
    INDEX BY BINARY_INTEGER;
	
    -- 사원 급여를 출력하기 위한 PL/SQL 테이블 선언 
    TYPE sal_table IS TABLE OF emp.sal%TYPE
    INDEX BY BINARY_INTEGER;
	
    ename_tab    ename_table;
    sal_tab      sal_table;
	
    i BINARY_INTEGER := 0;

BEGIN

    DBMS_OUTPUT.ENABLE;
	
    FOR emp_list IN  (SELECT ename, sal 
	                  FROM emp 
	                  WHERE deptno = 10) LOOP
	
        i := i +1 ;
	
        -- 테이블에 상품 이름을 저장
        ename_tab(i) := emp_list.ename;
	        
        -- 테이블에 상품 가격을 저장 
        sal_tab(i)   := emp_list.sal;        
	
    END LOOP;
	
    --  화면에 출력
    FOR cnt IN  1..i   LOOP  
	
        DBMS_OUTPUT.PUT_LINE('사원이름 : ' || ename_tab(cnt)); 
        DBMS_OUTPUT.PUT_LINE('사원급여 : ' || sal_tab(cnt));
	
    END LOOP;

END;
/ 

사원이름 : CLARK
사원급여 : 2450
사원이름 : KING
사원급여 : 5000
사원이름 : MILLER
사원급여 : 1300

        

태그

문서에 대하여

  • - 강좌 URL : http://www.gurubee.net/lecture/1056
  • - 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
  • 구루비의 모든 강좌는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.