MySQL은 코드 블록을 반복적으로 실행할 수 있고 루프 레이블 사용에 유연성을 추가할 수 있는 LOOP 문을 제공합니다. 루프를 제어할 수 있는 다음 두 가지 명령문이 있습니다.
이를 통해 확인을 기다리지 않고 루프를 즉시 종료할 수 있습니다.
아래 코드 전체를 건너뛰고 새로운 반복을 시작합니다.
저장 프로시저와 함께 LOOP 문을 사용하는 방법을 보여줍니다. 다음은 2, 4, 6, 8 등과 같은 짝수로 문자열을 구성하는 저장 프로시저입니다. -
mysql> Delimiter // mysql> CREATE PROCEDURE LOOP_loop() -> BEGIN -> DECLARE A INT; -> DECLARE XYZ VARCHAR(255); -> SET A = 1; -> SET XYZ = ''; -> loop_label: LOOP -> IF A > 10 THEN -> LEAVE loop_label; -> END IF; -> SET A = A + 1; -> IF (A mod 2) THEN -> ITERATE loop_label; -> ELSE -> SET XYZ = CONCAT(XYZ,A,','); -> END IF; -> END LOOP; -> SELECT XYZ; -> END // Query OK, 0 rows affected (0.07 sec)
이제 이 프로시저를 호출하면 다음과 같은 결과를 볼 수 있습니다. -
mysql> DELIMITER ; mysql> CALL LOOP_loop (); +-------------+ | XYZ | +-------------+ | 2,4,6,8,10, | +-------------+ 1 row in set (0.04 sec) Query OK, 0 rows affected (0.04 sec)
위 쿼리에서 A의 값이 10보다 크면 LEAVE 문으로 인해 루프가 종료됩니다. A의 값이 홀수인 경우 ITERATE 문은 그 아래의 모든 항목을 무시하고 새 반복을 시작합니다. A의 값이 짝수인 경우 ELSE 문의 블록은 짝수를 사용하여 문자열을 작성합니다.
위 내용은 저장 프로시저에서 MySQL LOOP 문은 어떻게 사용됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!