Olá, Luan! Parece que você já fez um bom trabalho com a procedure SOMA_VENDAS
. Seu código está bem organizado e fácil de entender.
A procedure que você criou está correta e deve funcionar conforme o esperado. Ela percorre a tabela PRODUTO_VENDA_EXERCICIO
em ordem de ID
, acumulando o VALOR_TOTAL
de cada venda até que a soma acumulada seja maior ou igual ao p_VALOR_ESTIPULADO
. Quando isso acontece, a procedure sai do loop e imprime o ID
da última venda considerada e o valor acumulado.
Aqui está um exemplo de como você pode chamar a procedure:
BEGIN
SOMA_VENDAS(20000);
END;
Nesse exemplo, estamos chamando a procedure SOMA_VENDAS
com p_VALOR_ESTIPULADO
igual a 20000. A procedure irá percorrer a tabela PRODUTO_VENDA_EXERCICIO
e somar o VALOR_TOTAL
de cada venda até que a soma seja maior ou igual a 20000. Então, ela imprimirá o ID
da última venda considerada e o valor acumulado.
Espero ter ajudado e bons estudos!