[FUNCTION] Duplication de la dernière occurrence
Bonjour
Je souhaite utiliser une fonctions (procStock) pour me remplir une colonne de table à partir d'une autre. cf code ci-dessous.
Le soucis que je rencontre est que la dernière valeur est repétée 2 fois, comme si le repeat était fait à nouveau avec la dernière valeur.
Qq'un a-t-il eu ce soucis?
Merci.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
DELIMITER $$
DROP FUNCTION IF EXISTS `hello` $$
CREATE FUNCTION hello (pId int)
RETURNS CHAR(50) DETERMINISTIC
BEGIN
DECLARE done,nb INT DEFAULT 0;
DECLARE col VARCHAR(50) DEFAULT '';
DECLARE curs CURSOR FOR select id FROM MaTable WHERE id=pId;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1 ;
OPEN curs;
REPEAT
FETCH curs INTO col;
insert into tmp VALUES(col);
UNTIL done END REPEAT;
CLOSE curs;
RETURN cols;
END $$
DELIMITER ; |