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 31 32 33 34 35 36 37 38 39 40
|
DECLARE i INTEGER;
DECLARE requete VARCHAR(50);
DECLARE nouvelle_requete VARCHAR(50050);
DECLARE autre_req VARCHAR(1000);
DECLARE strResultat VARCHAR(50000);
DECLARE curs CURSOR FOR SELECT champ FROM table WHERE condition;
SET strResultat = '';
SET requete = 'SELECT * FROM table WHERE champ NOT IN (';
OPEN curs;
WHILE ( FETCH curs INTO i ) DO //condition dont je ne suis pas sure
SET strResultat = CONCAT(strResultat, i, ',');
END WHILE;
CLOSE curs;
SET @nouvelle_requete = CONCAT(requete,strResultat,');');
PREPARE nouv_req FROM @nouvelle_requete; //autre requete
EXECUTE nouv_req; //la il faudrait également que je récupère les résultat
de cette requete dans une variable que je vais appeler @peut-etre, avec un into?
WHILE (possible de passer à l'enregistrement suivant de nouv_req) DO
SET @autre_requete = CONCAT('SELECT blabli FROM table2 WHERE champ = ',@peut-etre,'\'');
PREPARE autre_req FROM @autre_requete;
EXECUTE autre_req; // encore peut être avec un into??
INSERT INTO nouvelle table VALUES (toutes les valeurs récupérés);
DEALLOCATE PREPARE nouv_req;
END WHILE
DEALLOCATE PREPARE nouv_req; |
Partager