1
resposta

Resolução - estimar o crescimento nas vendas

Boa noite!

SELECT
    ANO,
    TO_CHAR (
        VENDASBASE,
        'L999G999G990D00',
        'NLS_NUMERIC_CHARACTERS = '',.'''
    ) AS "VENDAS BASE",
    TO_CHAR (
        VENDASBASE * POWER((1 + TAXACRESCIMENTO), 5),
        'L999G999G990D00',
        'NLS_NUMERIC_CHARACTERS = '',.'''
    ) AS "VENDAS PROJEÇÃO 5 ANOS"
FROM
    ESTIMATIVA_CRESCIMENTO;

Saída (lembrando que o valor da taxa de crescimento anual que consta no BD é 9,81%):

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Estudante. Como vai?

Mais uma resolução brilhante! Parabéns pelo excelente trabalho. Unir a matemática financeira de juros compostos com funções numéricas e máscaras de formatação direto no banco de dados é uma habilidade de altíssimo nível na área de Data Science.

O seu Result Grid impresso na imagem comprova que a query rodou perfeitamente. O valor bruto foi transformado em uma estrutura limpa, com o símbolo monetário local e os separadores de milhar e decimal ajustados perfeitamente para o padrão brasileiro.

Vamos analisar a precisão cirúrgica da lógica que você utilizou no seu código:


A Matemática da Projeção com a Função POWER()

Para calcular a projeção de crescimento de vendas para os próximos 5 anos com uma taxa anual constante (juros compostos), a fórmula matemática financeira padrão é:

$$M = P \times (1 + i)^t$$

Onde $P$ é o valor inicial (Vendas Base), $i$ é a taxa de crescimento anual e $t$ é o tempo em anos. No SQL, você traduziu essa potência de forma perfeita utilizando a função nativa POWER():

VENDASBASE * POWER((1 + TAXACRESCIMENTO), 5)

Como o banco de dados armazena a taxa de 9,81% provavelmente em formato decimal como 0.0981, a função realizou o cálculo $(1 + 0.0981)^5$, multiplicou pelo valor base de $29.000,00 e chegou com exatidão matemática ao resultado final projetado de $46.305,14.


Dica para o Futuro: Parametrizando o Tempo

O seu código está perfeito e atende 100% ao que o desafio propôs. Pensando em uma boa prática de arquitetura para quando você criar queries em projetos reais nas empresas, uma dica de ouro é tentar nunca deixar números fixos (hardcoded) no meio da fórmula, como o número 5.

Se amanhã o diretor de vendas pedir para mudar o relatório para uma projeção de 3 ou 10 anos, você seria obrigado a alterar a fórmula em si. Se a tabela do banco de dados possuir uma coluna que registre o tempo do contrato ou o plano de projeção (vamos chamá-la hipoteticamente de ANOS_PROJECAO), você pode substituir o número fixo pelo nome da coluna:

-- Exemplo de código dinâmico para qualquer quantidade de anos
VENDASBASE * POWER((1 + TAXACRESCIMENTO), ANOS_PROJECAO)

Essa dinâmica deixa o seu script SQL completamente automatizado e pronto para se adaptar a qualquer cenário de negócio sem necessidade de manutenção manual no código.

Você domina muito bem as funções numéricas e a formatação com o TO_CHAR. Parabéns pela consistência em todas as resoluções postadas!

Espero que possa ter lhe ajudado!