📍 BASIC LOOP
▪ 1 ~ 5까지 순서대로 출력
DECLARE
N NUMBER := 1;
BEGIN
LOOP
DBMS_OUTPUT.PUT_LINE(N);
-- 종료 조건 작성법 1
-- IF (N = 5) THEN EXIT;
-- END IF;
-- 종료 조건 작성법 2
EXIT WHEN N = 5;
N := N + 1;
END LOOP;
DBMS_OUTPUT.NEW_LINE;
END;
/
📍 FOR LOOP
▪ 1 ~ 5까지 순서대로 출력
BEGIN
FOR I IN 1..5
LOOP
DBMS_OUTPUT.PUT_LINE(I);
END LOOP;
DBMS_OUTPUT.NEW_LINE;
END;
/
▪ 1 ~ 5까지 거꾸로 출력
BEGIN
FOR I IN REVERSE 1..5 -- 역순 반복 (REVERSE)
-- FOR I IN 5..1 (X) -- FOR문은 무조건 1씩 증가
LOOP
DBMS_OUTPUT.PUT(I);
END LOOP;
DBMS_OUTPUT.NEW_LINE;
END;
/
▪ 반복문을 이용한 데이터 삽입
CREATE TABLE TEST (
NUM NUMBER(3),
STR VARCHAR2(20),
DT DATE
);
BEGIN
FOR I IN 1..10
LOOP
INSERT INTO TEST VALUES(I, '문자열' || I, SYSDATE);
END LOOP;
END;
/