そのようにしようとしましたが、1行しか返されません。最初の選択の後、プロシージャは終了します。
DROP PROCEDURE IF EXISTS testProc;
DELIMITER $$
CREATE PROCEDURE testProc(start_stamp INT, end_stamp INT, step INT)
BEGIN
DECLARE tmpStep INT;
SET tmpStep = start_stamp;
WHILE tmpStep < end_stamp DO
SELECT tmpStep;
SET tmpStep = tmpStep + step;
END WHILE;
END$$
DELIMITER ;
CALL testProc (1,10,1);
この場合、望ましい動作は 1 から 10 までの数値を返すことです。