1
resposta

MINHA RESPOSTA

CREATE DEFINER=`root`@`localhost` PROCEDURE `mais_um_campo`()
BEGIN
    DECLARE fim_do_cursor INT;
    DECLARE QUANTIDADE FLOAT;
    DECLARE PRECO FLOAT;
    DECLARE FATURAMENTOACUM FLOAT;
    DECLARE c CURSOR FOR 
        SELECT INF.QUANTIDADE, INF.PRECO 
        FROM ITENS_NOTAS_FISCAIS INF
        INNER JOIN NOTAS_FISCAIS  NF ON NF.NUMERO = INF.NUMERO
        WHERE MONTH(NF.DATA_VENDA) = 1 AND YEAR(NF.DATA_VENDA) = 2017;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET fim_do_cursor = 1;
    OPEN c; -- iniciando cursor 
        SET fim_do_cursor = 0; -- atribundo em variavel igual a zero
        SET FATURAMENTOACUM = 0; -- atribundo em variavel igual a zero
        WHILE fim_do_cursor = 0 -- enquanto for zero
        DO  -- faz
        FETCH c INTO QUANTIDADE, PRECO; -- insira curso emvariaveis quantidade e preco
        IF fim_do_cursor = 0 THEN
            SET FATURAMENTOACUM = FATURAMENTOACUM + (QUANTIDADE * PRECO);
        END IF;
        END WHILE;
    CLOSE c;
    SELECT FATURAMENTOACUM;        
END
1 resposta

Olá, Luiz, tudo bem?

A sua query ficou muito legal, você está indo muito bem.

Continue assim e bons estudos!