1
resposta

Minha Resposta

Achei uma solução diferente da proposta resolvida:

USE `sucos_vendas`;
DROP procedure IF EXISTS `COMPARATIVO_VENDAS`;

DELIMITER $$
USE `sucos_vendas`$$
CREATE PROCEDURE `COMPARATIVO_VENDAS` (VDATA_INICIAL DATE, VDATA_FINAL DATE)
BEGIN
    DECLARE VMENSAGEM VARCHAR(30);
    DECLARE FATURAMENTO_INICIAL FLOAT;
    DECLARE FATURAMENTO_FINAL FLOAT;

    SELECT SUM(B.QUANTIDADE * B.PRECO) AS TOTAL_VENDA INTO FATURAMENTO_INICIAL FROM 
    NOTAS_FISCAIS A INNER JOIN ITENS_NOTAS_FISCAIS B
    ON A.NUMERO = B.NUMERO
    WHERE A.DATA_VENDA = VDATA_INICIAL;

    SELECT SUM(B.QUANTIDADE * B.PRECO) AS TOTAL_VENDA INTO FATURAMENTO_FINAL FROM 
    NOTAS_FISCAIS A INNER JOIN ITENS_NOTAS_FISCAIS B
    ON A.NUMERO = B.NUMERO
    WHERE A.DATA_VENDA = VDATA_FINAL;

    IF FATURAMENTO_FINAL > (1.1 * FATURAMENTO_INICIAL) THEN
        SET VMENSAGEM = 'VERDE';
    ELSEIF FATURAMENTO_FINAL <= (1.1 * FATURAMENTO_INICIAL) AND FATURAMENTO_FINAL >= (0.9 * FATURAMENTO_INICIAL) THEN
        SET VMENSAGEM = 'AMARELA';
    ELSE
        SET VMENSAGEM = 'VERMELHO';
    END IF;
    SELECT VMENSAGEM;
END$$

DELIMITER ;
1 resposta

Olá, Rodrigo, tudo bem?

A sua procedure ficou muito legal, você está indo muito bem :).

Continue assim e bons estudos!