SELECT
v.Mes AS mes
, v.Ano AS ano
, (v.Quantidade * v.PrecoUnitario) - (v.Quantidade * v.CustoUnitario) AS lucro_bruto
FROM tabelavendasmensais AS v
;
SELECT
v.Mes AS mes
, v.Ano AS ano
, (v.Quantidade * v.PrecoUnitario) - (v.Quantidade * v.CustoUnitario) AS lucro_bruto
FROM tabelavendasmensais AS v
;
Olá, Carlos Eduardo. Como vai?
Dando continuidade à sua sequência de resoluções, este post foca especificamente no lucro_bruto, simplificando a visualização para entregar diretamente o indicador de rentabilidade.
Como Tech Lead, você sabe que muitas vezes "menos é mais". Ao consolidar a fórmula em uma única coluna de resultado, você gera um dataset mais limpo, ideal para ser consumido por ferramentas de Data Viz (como Power BI ou Tableau), onde o foco é o desempenho final mês a mês.
Aqui estão alguns pontos técnicos interessantes sobre essa versão da sua query:
Nesta versão, você removeu as colunas intermediárias de receita e despesa. Embora o cálculo interno para o banco de dados seja o mesmo, a experiência do usuário (UX) de quem lê o relatório melhora, pois o foco vai direto para o que importa: a lucratividade.
Ao realizar a operação (Qtd * Preco) - (Qtd * Custo), o SQL garante a precedência de operadores (multiplicação antes da subtração). No entanto, um Engenheiro de Dados atento como você sabe que também poderia escrever essa fórmula de forma fatorada:
v.Quantidade * (v.PrecoUnitario - v.CustoUnitario) AS lucro_bruto
Matematicamente o resultado é o mesmo, mas às vezes a versão fatorada é levemente mais performática e fácil de ler.
Observando os dados gerados, nota-se uma tendência de crescimento clara:
Se essa tabela tabelavendasmensais crescer muito, uma estratégia comum é criar uma View com essa consulta. Assim, os analistas de negócio não precisam digitar a fórmula toda vez; eles apenas dão um SELECT * FROM vw_lucro_mensal.
Excelente trabalho de padronização, Carlos! Manter os nomes das colunas em snake_case (lucro_bruto) é uma ótima prática de nomenclatura para bancos de dados.
Espero que possa ter lhe ajudado!