repeat until

SQL/PL

Repeat execution of a list of statements until a condition becomes true

Syntax

repeat_stmt:
          [ label_name:] REPEAT
               statement_list
          UNTIL conditional_expr END REPEAT [ label_name]

Description

The REPEAT statement will repeatedly execute statement_list until the conditional_expr evaluates to true or until a LEAVE (or RETURN in a function) statement is executed. The conditional_expr is evaluated at the end of the loop.

If an ENDREPEAT specifies label_name then an identical opening label_name: must be specified as well.

Example

create procedure cflow(i1 int, i2 int)begin    declare ii, ij int;    if i1 < i2 then        set (ii, ij) = (i1, i1);        w_loop: while ii <= i2 do            set ij = ij * ii;            select i1, i2, ii, ij;            set ii = ii + 1;            if ii > 100 then                leave w_loop;            end if;        end while;    else        set (ii, ij) = (i2, i1);        r_loop: repeat            set ij = ij + ii;            select i1, i2, ii, ij;            set ii = ii + 1;            if ii > 100 then                leave r_loop;            end if;        until ii > i1 end repeat;    end if;end;

See Also

while

loop

for