MySQL няма рекурсор като Oracle. Ако планирате да напишете съхранена процедура, която връща множество редове/набор от резултати в MySQL, просто направете
DROP procedure IF EXISTS `sample`;
DELIMITER $$
CREATE PROCEDURE `sample`(p_rank IN INT)
BEGIN
select * from MyTable where id=p_rank;
END$$
DELIMITER ;
и извикайте sample();
. Той ще върне набор от резултати, който можете да използвате.