Você sabe como fazer análises comparativas no SQL? Elas são essenciais e você precisa saber! Para isso vou te mostrar as funções de janela!
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:
Fala Impressionadores! Na aula de hoje eu quero te mostrar como fazer análises comparativas no SQL!
Como você deve saber, as análises comparativas são úteis em diversos casos, principalmente quando precisamos comparar um mês com o outro, ou até mesmo, um mês com o mesmo mês do ano anterior.
Essas são análises muito comuns, para essas análises vamos utilizar as funções de janela (ou Window Functions).
Vamos mostrar também o uso da função LAG que permite fazer um deslocamento dentro da nossa tabela para podermos fazer essas comparações!
Gostou do tema? Vamos para o passo a passo.
Análise comparativa MÊS a MÊS (MoM).
Como podemos ver na imagem acima, as funções de janela nos permitem fazer diversos cálculos!
O que precisamos para fazer um cálculo comparativo?
Para fazer uma comparação precisamos fazer com que o resultado do mês atual e do mês anterior estejam na mesma linha.
Exemplo:
Se em uma tabela estamos no mês de fevereiro e queremos comparar os resultados desse mês com o mês anterior, então precisamos acessar as informações de janeiro para poder compará-las com fevereiro, vamos fazer estes resultados aparecerem na mesma linha em formato de tabela.
Como vai ficar a sintaxe dessa estrutura?
A função LAG é usada para trazer este atraso na coluna, que pode ser de 1 mês, de 2 meses, dependendo do que queremos comparar.
Esta função → LAG, pede 3 argumentos:
Se você não conhece a função do Over ou Order BY, essas explicações estão na última aula de Acumulado, clique no link!
Vou deixar algumas legendas para facilitar a compreensão de cada linha da sintaxe:
O primeiro passo é criar o banco de dados de teste → selecione CREATE DATABASE Teste; como na imagem abaixo → Clique em executar.
Feito isso, o banco de dados está criado!
Vamos criar uma tabela chamada Resultado, esta tabela vai ter as duas informações que comentamos anteriormente:
Data_Fechamento e Faturamento_MM
Agora que já criamos nosso banco de dados teste, note que ele ainda não aparece na coluna com os bancos de dados, a esquerda (imagem abaixo).
Para que ele apareça, clique em Banco de dados → em seguida Atualizar.
Para garantir que estamos no banco de dados certo, selecione o nome do banco de dados (Teste):
Selecionar e executar:
Feito isso, vamos selecionar o nosso código e clicar em executar para criar a nossa tabela:
Em seguida selecione a tabela e execute:
Por fim, vamos selecionar o nosso SELECT * FROM Resultado; e executá-lo também…
Pronto! Já conseguimos visualizar a nossa tabela.
Precisamos apenas criar as colunas que vamos usar para responder nossas dúvidas…
Qual a variação mês a mês dos valores? Houve acréscimo? Decréscimo?
Obs. Para esta análise vamos considerar como padrão o faturamento de dez/2019 sendo 5 milhões.
Lembrando que o nosso objetivo é criar uma coluna com o mês anterior para comparação.
Para isso vamos montar a fórmula conforme a sintaxe passada no início da aula → após criar a fórmula → selecionar e executar.
Observe que acrescentamos o comando AS, este comando nos permite nomear a nova coluna.
Resultado:
Note que a nova coluna está trazendo sempre o valor do mês anterior e está considerando para o mês 12/2019 o padrão de 5 milhões.
Agora que temos em cada linha o valor do mês atual e o valor do mês anterior já é possível fazer a comparação com um cálculo simples.
Para obter o resultado da variação em porcentagem (%) temos que fazer o seguinte cálculo:
(Valor do mês atual / Valor do mês anterior) -1
No nosso código este cálculo vai ficar da seguinte forma:
Observe na imagem abaixo:
Obs. O nome desta nova coluna ‘VAR. % MoM’ é um nome composto e por este motivo deve estar entre aspas!
Nossa nova coluna mostra o resultado em percentual do comparativo a cada mês!
Comparando o mês 3 com 6 milhões e o mês 2 com um faturamento de 10 milhões, notamos na coluna VAR. % MoM uma queda de menos -0,4%.
Ajustes simples:
Podemos ajustar os valores da coluna VAR. % MoM diminuindo as casas decimais para deixar mais visual, para isso vamos usar a função ROUND com 2 casas decimais.
Após acrescentar este ajuste → selecione toda a fórmula e execute.
Nessa aula eu te mostrei como utilizar as funções de janela para que você consiga fazer análises comparativas no SQL!
Essas análises são muito importantes, pois quando estamos tratando com dados, geralmente vamos precisar fazer análises comparativas para saber o desempenho, aumento, queda…
E essas informações são cruciais para tomadas de decisões importantes para melhorar produção, diminuir o gasto, entre outras decisões que podem ser tomadas!
Eu fico por aqui! Espero que gostem da aula! Abraço.
Leia também sobre: Join SQL: o que é, tipos e como usar (guia para iniciantes).
Para acessar outras publicações de SQL, clique aqui!
Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.