Pular para o conteúdo principal

[ DATEPART ] - CRIANDO TABELA CALENDÁRIO NO SQL

Este artigo descreve como criar tabela calendário no SQL Server utilizando a função DATEPART .

DATEPART é uma função que retorna o dia, semana, mês e ano de uma data específica.

--- Leia o cenário ---

Eu tenho uma tabela SQL com a data de aquisição do produto. 

Porém, eu preciso obter outras informações relevantes como o dia, semana, mês e ano para utilizar como filtro nas minhas análises. Como não tenho essas colunas , eu preciso criar.

Para cenários como este, eu costumo usar o DATEPART , que é uma função que permite criar a "tabela calendário" dentro do banco de dados.

Particularmente, eu prefiro criar no Banco de Dados do que na ferramenta analítica como Power BI, por exemplo. Por causa da preocupação com a performance do relatório.

Também , utilizei o comando [ CASE WHEN ] para obter o nome do mês. É uma ótima maneira de melhorar a qualidade nos dados.

***************** Salve o Script *****************
SELECT   
     
     PRODUTO,
     QUANTIDADE AS QTD,
     PRECO_UNIT,
     VALOR_TOTAL,
     DATA_AQUISICAO,
     DATEPART(DAY,DATA_AQUISICAO) DIA,     -- PARA OBTER O DIA
     DATEPART(WEEK,DATA_AQUISICAO) Nº_DA_SEMANA,-- PARA OBTER O NUMERO DA SEMANA NO ANO
     DATEPART(MONTH,DATA_AQUISICAO) Nº_MES,   -- PARA OBTER O NÚMERO DO MES
     DATEPART(YEAR,DATA_AQUISICAO) ANO,     -- PARA OBTER O ANO
 CASE 
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=1 THEN 'JANEIRO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=2 THEN 'FEVEREIRO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=3 THEN 'MARÇO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=4 THEN 'ABRIL'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=5 THEN 'MAIO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=6 THEN 'JUNHO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=7 THEN 'JULHO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=8 THEN 'AGOSTO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=9 THEN 'SETEMBRO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=10 THEN 'OUTUBRO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=11 THEN 'NOVEMBRO'
        WHEN DATEPART(MONTH,DATA_AQUISICAO)=12 THEN 'DEZEMBRO'
ELSE '' END NOME_MES

Comentários

Postagens mais visitadas deste blog

Exercícios resolvidos em Linguagem Python - para iniciantes

Esta lista de exercícios resolvidos é um manual para ajudar todo aluno iniciante e não só, a adquirir e aprimorar as habilidades necessárias para se trabalhar com Python, de forma rápida e consistente. Estude e desfrute do conteúdo. 1º Exercício      Faça um programa que informe a versão do Python que você está utilizando Solução import sys print ( "Versão do Python" ) print (sys.version) print ( "Informação da versão instalada" ) print (sys.version_info) Atenção :     -  O módulo sys fornece funções e variáveis usadas para manipular diferentes partes do ambiente de tempo de execução do Python;     - Pra quem ainda não está familiarizado com a linguagem, um módulo  é um arquivo contendo definições e comandos em Python para serem usados em outros programas. 2º Exercício      Faça um programa em linguagem Python que converta metros para centímetros. Solução print ( ' \t ----Conversão de medida---- ' ) metros = int ( in...

Como abrir uma página da web utilizando Python?

Simples, você pode abrir páginas da Web de forma rápida, segura e fácil. Veja só, durante os estudos das bibliotecas padrão do Python descobri que para abrir um navegador web a partir de um script, devo importar o módulo webbrowser. Em seguida, usar webbrowser.open () que vai receber o link que quero abrir como argumento e executar o serviço, ou seja, basta inserir um endereço do youtube nele, na verdade pode ser qualquer link que você desejar. Exemplo webbrowser.open( "https://www.huicode.com.br/p/exercicios-resolvidos-de-linguagem-c.html" ) Para funcionar temos que importar o módulo webbrowser, que vai ser a maneira de dizer ao python que queremos usar webbrowser e todas as suas funcionalidades no programa. import webbrowser webbrowser.open( "https://www.huicode.com.br/p/exercicios-resolvidos-de-linguagem-c.html" ) Funcionooou, uhuhu. Nem parece, mas o módulo webbrowser é um módulo muito empregado em projetos de sites de filmes. Tem muitas utilidades, acredite.

Lista de exercícios resolvidos de Linguagem Python

  Neste artigo, temos diversos exercícios básicos, exercícios utilizando   if - else , exercícios utilizando o   for  e   while  e exercícios utilizando as funções   lambda  e   map . Parte I - Exercícios básicos  (Estruturas sequenciais) Exercício 01 Desenvolva um programa que peça dois números e imprima a soma. Solução #criar as variáveis que vão receber a entrada dos números num1 = int ( input ( "Digite o 1º numero: " )) num2 = int ( input ( "Digite o 2º numero: " )) #calcular a soma soma = num1 + num2 # Mostrar o resultado na tela print ( f "A soma entre { num1 } e { num2 } é = { soma } " ) Ao executar o script , teremos como saída: Exercício 02 Faça um programa que converta metros para centímetros. Solução Um metro corresponde a 100 centímetros. Portanto: #criar a variável que vai receber a entrada do valor metros = float ( input ( "Digite o valor em metros: " )) #calculando a medida centimetros = metros * 100 # Most...