turiu tokią užklausą :
DELIMITER $$
DROP PROCEDURE IF EXISTS `TESTO` $$
CREATE PROCEDURE `TESTO`()
BEGIN
DECLARE i INT DEFAULT 0;
DECLARE KIEKIS INT DEFAULT 0;
SET KIEKIS=(SELECT COUNT(KODAS) FROM ISSS_SR I);
WHILE i<KIEKIS DO
PREPARE uzklausa FROM 'SELECT KODAS, RF FROM ISSS_SR LIMIT ?, 1 into @KODAS_1, @FORMULE';
SET @a = i;
EXECUTE uzklausa using @a;
PREPARE uzklausa3 FROM 'UPDATE ISSS_SR SET SR=@FORMULE WHERE KODAS=@KODAS_1';
EXECUTE uzklausa3;
SET i=i+1;
DEALLOCATE PREPARE uzklausa;
DEALLOCATE PREPARE uzklausa3;
END WHILE;
END $$
DELIMITER ;
Man reikia gauti SR. @FORMULE yra užklausa :
SELECT(SELECT
SUM(SR) FROM ISSS_ATASKAITA
WHERE DUOM_TIPAS=2 AND STRAIPSNIS = 292 AND SEKTORIUS= 'S1312' AND PRIEMONE='F7') + (SELECT
SUM(SR) FROM ISSS_ATASKAITA_F06
WHERE DUOM_TIPAS=2 AND STRAIPSNIS = 3040 AND SEKTORIUS= 'S1314' AND PRIEMONE='F99')
Kiekvienam kodui yra skirtinga ši užklausa. Dabar su tokia užklausa man į SR stulpelį įrašo ne @FORMULE atsakymą, o tiesiog pačias formules.
Gal turit kokių patarimų kaip padaryti, kad man pirmiausia suskaičiuotų, o po to įrašytų atsakymą į SR.