WHILE

WHILE (조건 반복)

SQL 사용자 정의 함수에서 조건이 충족되는 동안 문 블록을 반복 처리하게 하는 문법이에요. 조건을 먼저 검사해 한 번도 실행하지 않을 수 있는 루프예요.

출처: 문서

본문

WHILE 문은 SQL 사용자 정의 함수에서 조건이 충족되는 동안 문 블록을 처리하게 하는 선택적 구조예요. 조건은 각 반복의 첫 번째 단계로 검증돼요.

condition을 정의하는 표현식은 적어도 한 번은 평가돼요. 결과가 true면 처리는 DO로 이동해 statements를 지나 다시 WHILEcondition으로 돌아와요. 결과가 false면 처리는 END WHILE로 이동해 함수의 다음 문을 계속해요.

WHILE 키워드 앞의 선택적 label은 블록에 이름을 붙이는 데 사용할 수 있어요.

REPEAT 문은 매우 비슷한데, 차이는 REPEAT에서는 문이 적어도 한 번 처리되고 WHILE 블록에서는 문이 전혀 처리되지 않을 수도 있다는 점이에요.

시그니처

[label :] WHILE condition DO
  statements
END WHILE

예시

WHILE p > 1 DO
  SET r = r * n;
  SET p = p - 1;
END WHILE;

WHILE 문을 다른 문과 결합해 사용하는 다양한 복잡도의 추가 예시는 예시 SQL UDF 문서에서 확인할 수 있어요.

더 알아보기 (Learn more)

REPEAT이나 LOOP와의 차이점이 궁금하다면 각 문서를, SQL UDF 전반은 SQL 사용자 정의 함수 문서를 참고해요.