본문 바로가기

Database/PL SQL

PL/SQL Tutorial - CONTINUE

 반복 도중 특정 조건일때 중단하게 하려면 어떻게 해야할까? 바로 CONTINUE를 사용하면 된다.

IF condition THEN
    CONTINUE;
END IF;

IF 문에서는 기본적으로 이렇게 사용되며 LOOP, FOR LOOP, WHILE LOOP 모두 적용된다.

BEGIN
  FOR n_index IN 1 .. 10
  LOOP
    -- skip odd numbers
    IF MOD( n_index, 2 ) = 1 THEN
      CONTINUE;
    END IF;
    DBMS_OUTPUT.PUT_LINE( n_index );
  END LOOP;
END;

익명 블록이 완료되었습니다.
2
4
6
8
10

FOR LOOP 안에서 mod(n_index, 2) = 1 이 true인 경우에는 continue 해주고 나머지는 출력해주어 2의 배수일 때만 결과값이 나타나게 하였다. 

BEGIN
  FOR n_index IN 1 .. 10
  LOOP
    -- skip even numbers
    CONTINUE
  WHEN MOD( n_index, 2 ) = 0;
    DBMS_OUTPUT.PUT_LINE( n_index );
  END LOOP;
END;

익명 블록이 완료되었습니다.
1
3
5
7
9

마찬가지로 WHEN에서도 사용할 수 있다. 이번엔 반대로 MOD(n_index, 2) = 0 일때에는 continue 해주고 아닐 때에 출력해주었다.

'Database > PL SQL' 카테고리의 다른 글

PL/SQL Tutorial - SELECT INTO  (0) 2019.05.08
PL/SQL Tutorial - Exception handlers  (0) 2019.05.08
PL/SQL Tutorial - LOOP  (0) 2019.05.08
PL/SQL Tutorial - NULL  (0) 2019.05.07
PL/SQL Tutorial - GOTO  (0) 2019.05.07