SQL/MySQL/Procedure Function/ITERATE

Материал из SQL эксперт
Перейти к: навигация, поиск

Loop with ITERATE Statement

   <source lang="sql">

mysql> mysql> mysql> DELIMITER // mysql> CREATE PROCEDURE myProc (IN in_count INT)

   -> BEGIN
   ->     DECLARE count INT default 0;
   ->
   ->     increment: LOOP
   ->     SET count = count + 1;
   ->     IF count < 20 THEN ITERATE increment; END IF;
   ->     IF count > in_count THEN LEAVE increment;
   ->     END IF;
   ->     END LOOP increment;
   ->
   ->     SELECT count;
   -> END
   -> //

Query OK, 0 rows affected (0.00 sec) mysql> DELIMITER ; mysql> mysql> call myProc(5); +-------+ | count | +-------+ | 20 | +-------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.00 sec) mysql> mysql> drop procedure myProc; Query OK, 0 rows affected (0.00 sec) mysql>

       </source>