1
resposta

Resultado FLOAT com Cursor em Procedure

Gostaria de saber o que eu poderia alterar na Procedure seguinte para obter o resultado do faturamento como FLOAT e não INT.

CREATE PROCEDURE `mais_um_campo`()
BEGIN
    DECLARE QUANTIDADE INT;
    DECLARE PRECO FLOAT;
    DECLARE FATURAMENTOACUM FLOAT;
    DECLARE fim_do_cursor INT;
    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;
        SET fim_do_cursor = 0;
        SET FATURAMENTOACUM = 0;
        WHILE fim_do_cursor = 0
        DO
            FETCH c INTO QUANTIDADE, PRECO;
            IF fim_do_cursor = 0 THEN
                SET FATURAMENTOACUM = FATURAMENTOACUM + (QUANTIDADE * PRECO);
            END IF;
        END WHILE;
    CLOSE c;
    SELECT FATURAMENTOACUM;
END
1 resposta

Essa questão está repetida

https://cursos.alura.com.br/forum/topico-resultado-float-com-cursor-em-procedure-95441

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software