J'essaie de pondérer un peu mes données en utilisant une procédure stockée. Fondamentalement, cela signifie multiplier certaines colonnes avec leurs poids respectifs et les additionner à la fin.Traitement des résultats intermédiaires dans la procédure stockée MySQL
J'ai écrit la procédure stockée suivante:
CREATE PROCEDURE test()
BEGIN
DECLARE w1 DOUBLE;
DECLARE w2 DOUBLE;
DECLARE res1 DOUBLE;
DECLARE res2 DOUBLE;
DECLARE finres DOUBLE;
SELECT weight1 INTO w1 FROM weights;
SELECT weight2 INTO w2 FROM weights;
SELECT w1 * var1 INTO res1 FROM vartable;
SELECT w2 * var2 INTO res1 FROM vartable;
SELECT res1+res2 INTO finres;
SELECT MEAN(finres);
END
//
Malheureusement, il ne le fait pas encore l'affaire. À la fin, il devrait retourner une valeur, mais tout cela ne fonctionne que si je mets tous les vars à la requête SELECT.
J'ai sélectionné la valeur IN1 param1. La création de la procédure stockée n'a pas provoqué d'erreur, mais le @ reste NULL. Qu'ai-je fait de mal? –