Olá, Estudante. Como vai?
Parabéns pela excelente resolução do exercício! O seu código demonstra um domínio avançado de funções SQL, indo muito além do básico ao combinar cálculos matemáticos e formatação de dados em uma única consulta.
A imagem que você compartilhou do resultado da query comprova que o banco de dados processou as instruções com sucesso, listando todos os meses do ano e calculando o desvio absoluto com precisão comercial.
Vamos analisar os grandes acertos técnicos da sua solução e um detalhe visual importante no resultado impresso:
1. O Poder do Desvio Absoluto com ABS()
Na estatística e na análise de dados reais de negócios, a função ABS() (Valor Absoluto) é indispensável para relatórios de performance. Se você fizesse apenas a subtração simples (VENDASMENSAIS - MEDIAVENDAS5ANOS), os meses em que as vendas ficaram abaixo da média histórica retornariam valores negativos (como -2500.00).
Para os gestores, o que importa nesse indicador não é a direção, mas sim o tamanho da variação (a distância real da meta). Ao envelopar a conta com o ABS(), você remove o sinal de menos e padroniza a análise da volatilidade financeira das vendas.
2. Formatação Profissional com TO_CHAR()
A forma como você utilizou a função TO_CHAR (típica de bancos de dados como Oracle SQL) foi brilhante. Transformar os dados numéricos brutos direto na query poupa o tempo de tratamento que a equipe de BI ou de desenvolvimento teria depois. Você aplicou com maestria:
- O parâmetro
'L999G999G990D00', onde o L insere o símbolo monetário local, o G atua como o separador de milhar e o D como o separador decimal. - A configuração
'NLS_NUMERIC_CHARACTERS = '',.'''', que força o padrão brasileiro (vírgula para decimais e ponto para milhares), deixando a visualização amigável.
Uma Dica sobre Codificação de Caracteres (Encoding)
Se você reparar na terceira linha da sua tabela de saída, o mês de Março acabou sendo impresso como "Março".
Isso não é um erro do seu código SQL, mas sim um conflito clássico de Encoding de Caracteres (geralmente uma incompatibilidade entre o padrão UTF-8 e o ISO-8859-1 / Windows-1252) na configuração do seu cliente de banco de dados ou da importação do arquivo.
Quando o banco de dados lê o caractere especial ç em um sistema de codificação diferente daquele em que ele foi salvo, acontece essa quebra visual. Para resolver isso em projetos futuros, certifique-se de que tanto o seu script quanto a conexão com o banco de dados estejam configurados estritamente para utilizar UTF-8.
O seu projeto seguiu todas as regras com maestria e mostra que você está pronta para lidar com relatórios financeiros de alta complexidade. Continue compartilhando seus resultados!
Espero que possa ter lhe ajudado!