HPL/SQL - WHILE 문

HPL/SQL - WHILE 문

WHILE 문은 조건이 참(true)인 동안 한 개 이상의 문장을 반복 실행해요. 반복 횟수가 미리 정해지지 않은 상황에서 조건에 따라 반복할 때 사용합니다.

출처: 문서

본문

문법(Syntax):

[<<label>> | label:]
WHILE boolean_expression LOOP | DO | BEGIN
  statements
END [LOOP | WHILE;]

지원하는 DB 스타일에 따라 LOOP, DO, BEGIN 끝맺음(END)을 골라 쓸 수 있어요.

예제(Examples):

Oracle, PostgreSQL, Netezza 스타일:

-- Oracle, PostgreSQL, Netezza
WHILE count > 0 LOOP
  count := count - 1;
END LOOP;

DB2, Teradata, MySQL 스타일:

-- DB2, Teradata, MySQL
WHILE count > 0 DO
  SET count = count - 1;
END WHILE;

SQL Server 스타일:

-- SQL Server
WHILE count > 0 BEGIN
  SET count = count - 1;
END

count가 0보다 큰 동안 계속 1씩 줄이며 반복하는 전형적인 예시예요.

호환성(Compatibility): Oracle, Teradata, IBM DB2, Microsoft SQL Server, MySQL, PostgreSQL, Netezza

더 알아보기 (Learn more)

반복 횟수가 처음부터 정해져 있다면 FOR 문이 더 깔끔해요. 조건 기반 반복이 필요할 때 WHILE을 사용하면 됩니다.