Mysql 之 循环语句
官方英文文档:
http://dev.mysql.com/doc/refman/5.0/en/flow-control-statements.html
************************** LOOP **************************
语法:
[begin_label:] LOOP statement_listEND LOOP [end_label]
DELIMITER$$CREATE PROCEDURE pro_loop(p1 INT)BEGIN label1: LOOP SET p1 = p1 + 1; IF p1 < 10 THEN SELECT p1 AS result; ITERATE label1; END IF; SELECT 'END IF' AS result; LEAVE label1; END LOOP label1; SET @x = p1; SELECT @x as result;END$$
[begin_label:] WHILE search_condition DO statement_listEND WHILE [end_label]
DELIMITER$$DROP PROCEDURE IF EXISTS pro_while$$CREATE PROCEDURE pro_while(i INT)BEGINDECLARE j INT DEFAULT 1;WHILE j < i DOSELECT j AS result;SET j = j + 1;END WHILE;END$$
[begin_label:] REPEAT statement_listUNTIL search_conditionEND REPEAT [end_label]
DELIMITER$$DROP PROCEDURE IF EXISTS pro_repeat$$CREATE PROCEDURE pro_repeat(p1 INT)BEGINSET @X = 0;REPEATSELECT @X AS result;SET @X = @X + 1;UNTIL @X > p1 END REPEAT;END$$