> 데이터 베이스 > MySQL 튜토리얼 > MySQL 저장 프로시저에서 FOR 및 WHILE 루프를 올바르게 구현하는 방법은 무엇입니까?

MySQL 저장 프로시저에서 FOR 및 WHILE 루프를 올바르게 구현하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-11-30 10:55:12
원래의
778명이 탐색했습니다.

How to Correctly Implement FOR and WHILE Loops in MySQL Stored Procedures?

MySQL의 FOR 루프 이해

MySQL에서 FOR 루프는 코드 블록을 여러 번 실행하는 데 사용되는 반복 문입니다. 이를 통해 테이블의 일련의 값 또는 행을 반복할 수 있습니다.

제공된 저장 프로시저에 오류가 있습니다

제공된 저장 프로시저에 잘못된 FOR 루프 구문이 있습니다. . MySQL의 FOR 루프에 대한 올바른 구문은 다음과 같습니다.

FOR loop_variable IN expression1, expression2, ...
LOOP
  -- loop body
END LOOP;
로그인 후 복사

수정된 저장 프로시저

올바르게 구현된 FOR 루프가 있는 수정된 버전의 저장 프로시저 :

DELIMITER $$  
CREATE PROCEDURE ABC()

   BEGIN
      DECLARE a INT Default 0 ;
      FOR i IN 1..5 LOOP
         SET a=a+1;
         select a;
      END LOOP;
END $$
DELIMITER ;
로그인 후 복사

이 예에서 FOR 루프는 1에서 5까지 반복되며 각 반복마다 1씩. 루프는 i가 6에 도달하면 종료됩니다.

대체 루프 구문: WHILE LOOP

FOR 루프 외에도 MySQL은 다음을 실행하는 또 다른 반복 문인 WHILE 루프를 제공합니다. 지정된 조건이 true인 동안의 코드 블록입니다. 구문은 다음과 같습니다:

WHILE condition LOOP
  -- loop body
END LOOP;
로그인 후 복사

예:

WHILE a < 10 LOOP
  SET a=a+1;
  select a;
END LOOP;
로그인 후 복사

이 WHILE 루프는 a가 10에 도달할 때까지 계속 실행됩니다.

위 내용은 MySQL 저장 프로시저에서 FOR 및 WHILE 루프를 올바르게 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿