MySQL 8.4 Release Notes
[begin_label:] WHILE search_condition DO
statement_list
END WHILE [end_label]
The statement list within a WHILE
statement is repeated as long as the
search_condition expression is true.
statement_list consists of one or
more SQL statements, each terminated by a semicolon
(;) statement delimiter.
A WHILE statement can be labeled.
For the rules regarding label use, see
Section 15.6.2, “Statement Labels”.
Example:
CREATE PROCEDURE dowhile()
BEGIN
DECLARE v1 INT DEFAULT 5;
WHILE v1 > 0 DO
...
SET v1 = v1 - 1;
END WHILE;
END;