[begin_label
:] REPEATstatement_list
UNTILsearch_condition
END REPEAT [end_label
]
Die Anweisungsliste in einer
REPEAT
-Anweisung wird wiederholt, bis die
Suchbedingung search_condition
zutrifft. Somit geht ein REPEAT
immer
mindestens einmal in die Schleife. Die
statement_list
besteht aus einer
oder mehreren Anweisungen.
Eine REPEAT
-Anweisung kann auch beschriftet
sein. Ein end_label
kann allerdings
nur verwendet werden, wo auch ein
begin_label
vorhanden ist. Wo beide
vorhanden sind, müssen sie identisch sein.
Beispiel:
mysql>delimiter //
mysql>CREATE PROCEDURE dorepeat(p1 INT)
->BEGIN
->SET @x = 0;
->REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
->END
->//
Query OK, 0 rows affected (0.00 sec) mysql>CALL dorepeat(1000)//
Query OK, 0 rows affected (0.00 sec) mysql>SELECT @x//
+------+ | @x | +------+ | 1001 | +------+ 1 row in set (0.00 sec)
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.