pbj0812의 코딩 일기

[SQL] loop, repeat, while 로 1부터 10까지 더하기 본문

ComputerLanguage_Program/SQL

[SQL] loop, repeat, while 로 1부터 10까지 더하기

pbj0812 2021. 11. 3. 02:21

0. 목표

 - loop, repeat, while 로 1부터 10까지 더하기

1. 실습

 1) loop

  - 프로시저 생성

DELIMITER $$
CREATE PROCEDURE sql_test.loop_test()
BEGIN
	DECLARE i INT DEFAULT 0;
    DECLARE result INT DEFAULT 0;
    
    loop_test:LOOP 
		IF(i > 10) THEN
			LEAVE loop_test;
		END IF;
	SET result = result + i;
	SET i = i + 1;
	END LOOP;

	SELECT result;
END $$
DELIMITER ;

  - 실행

CALL sql_test.loop_test();

  - 결과

 2) repeat

  - 프로시저 생성

DELIMITER $$
CREATE PROCEDURE sql_test.repeat_test()
BEGIN
	DECLARE i INT DEFAULT 0;
    DECLARE result INT DEFAULT 0;
    
    repeat_test:REPEAT
	SET result = result + i;
	SET i = i + 1;
    UNTIL i > 10
	END REPEAT;

	SELECT result;
END $$
DELIMITER ;

  - 실행

CALL sql_test.repeat_test();

  - 결과

 3) while

  - 프로시저 생성

DELIMITER $$
CREATE PROCEDURE sql_test.while_test()
BEGIN
	DECLARE i INT DEFAULT 0;
    DECLARE result INT DEFAULT 0;
    
    WHILE (i < 11) DO
		SET result = result + i;
		SET i = i + 1;
	END WHILE;

	SELECT result;
END $$
DELIMITER ;

  - 실행

CALL sql_test.while_test();

  - 결과

2. 출처

 - MySQL 반복문(Loop, While, Repeat)

 - [Stored Procedure] 9. 저장 프로시저 에서의 반복

Comments