Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the ultimate-member domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /ledcorps/www/wp/wp-includes/functions.php on line 6114 5.1.1 FOR LOOP – 대나무숲

5.1.1 FOR LOOP

출처 http://www.gurubee.net/lecture/1056

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

        

답글 남기기 0

Your email address will not be published. Required fields are marked *