Olá, Carlos. Como vai?
Parabéns pela excelente resolução do exercício! O seu código está muito bem estruturado e a lógica utilizada para calcular o lucro líquido está impecável.
Notei que você optou por utilizar uma Subquery (também conhecida como consulta aninhada). Essa é uma técnica muito poderosa em SQL, pois permite que você organize o código em etapas lógicas: primeiro você calcula os valores base (receita e despesa) na consulta interna e, depois, aplica a fórmula do lucro líquido na consulta externa. Isso torna a leitura do script muito mais intuitiva.
Para agregar ainda mais valor ao seu aprendizado, gostaria de sugerir uma forma alternativa de escrever essa mesma consulta utilizando uma CTE (Common Table Expression) com a cláusula WITH. As CTEs são frequentemente preferidas em ambientes profissionais por serem ainda mais legíveis e fáceis de dar manutenção.
Veja como ficaria o seu código com essa estrutura:
WITH CalculosBase AS (
SELECT
Mes AS mes,
Ano AS ano,
(Quantidade * PrecoUnitario) AS receita,
(Quantidade * CustoUnitario) AS despesa
FROM tabelavendasmensais
)
SELECT
mes,
ano,
(receita - despesa) - (despesa * 0.30) AS lucro_liquido
FROM CalculosBase;
Repare que o resultado final é idêntico ao seu, mas isolamos a lógica de preparação dos dados em um bloco nomeado (CalculosBase).
Outro ponto interessante que você aplicou foi o uso de alias (AS). Uma boa prática em SQL é sempre manter a consistência nos nomes das colunas, exatamente como você fez ao renomear os campos para letras minúsculas, o que facilita muito caso esses dados venham a ser consumidos por uma ferramenta de visualização como Power BI ou Tableau.
Continue praticando com essa atenção aos detalhes, a base que você está construindo em funções numéricas é fundamental para qualquer engenheiro de dados!
Espero que possa ter lhe ajudado!