Mixing Range and Expression Lists in the Same FOR Statement
If loop_var is an INT or SMALLINT value, you can mix ranges
and expression lists in the same FOR statement. The following example
shows a mixture that uses an integer variable. Values in the expression
list include the value that is returned from a SELECT statement, a
sum of an integer variable and a constant, the values that are returned
from an SPL function named p_get_int, and integer constants:
CREATE PROCEDURE for_ex () DEFINE i, j INT; LET j = 10; FOR i IN (1 TO 20, (SELECT c1 FROM tab WHERE id = 1), j+20 to j-20, p_get_int(99),98,90 to 80 step -2) INSERT INTO tab VALUES (i); END FOR; END PROCEDURE;