Consulta t-sql: Últimos 7 dias , 30 dias e 6 meses.

Oi pessoal.

 

Atendendo a pedidos criaremos três consultas no sql server, a primeira filtrar as linhas dos últimos 7 dias, ou seja, filtrar todas as linhas do dia atual até 7 dias atrás, a segunda até os últimos 30 dias, e a terceira até os últimos 6 meses, todas  de forma automática.

  

Para fazer isso usaremos as funções: GETDATE (que mostra a data atual do sistema) , a  DATEADD ( calcula a adição ou subtração de datas) e a CAST para converter a coluna Data_Venda da tabela para o tipo DATE.  E por fim, CONVERT com o código 103 para formatar a Data_Venda para DD/MM/AAAA o padrão brasileiro.

E operador BETWEEN para definir a Data Início ( Hoje) e a Data Fim (-7 dias , -30 dias ou -180 dias).

 Consulta sql últimos 7 dias   Consulta sql últimos 30 dias    DATEADD    GETDATE()  Consulta sql últimos 6 meses

 

 DATA_INICIO:  

 CAST ( GETDATE()  AS DATE )   ou     DATEADD ( d0 , GETDATE() )

 

 DATA_FIM:  

 DATEADD ( d-7 , GETDATE() )

 DATEADD ( d-30 , GETDATE() )

 DATEADD ( d-180 , GETDATE() )

  

 d  adição ou subtração  em dias.

-7  quantidade de dia(s)  a serem calculados.

-30  quantidade de dia(s)  a serem calculados.

-180  quantidade de dia(s)  a serem calculados.

 

Consulta sql últimos 7 dias   

 

 select

cod_venda,

convert( nvarchar (10), Data_Venda ,103) as Data_VendaBR, —Conversão para DD/MM/AAAA

valor

from bd_vendas.dbo.tab_venda

where cast(data_venda as date) between cast( getdate() as date) and  cast( dateadd(d, -7, getdate() ) —Filtra o Período dos últimos 7 dias

 

 

 

 Consulta sql últimos 30 dias   

 

 

select

cod_venda,

convert( nvarchar (10), Data_Venda ,103) as Data_VendaBR, —Conversão para DD/MM/AAAA

valor

from bd_vendas.dbo.tab_venda

where cast(data_venda as date) between cast( getdate() as date) and  cast( dateadd(d, -30, getdate() ) —Filtra o Período dos últimos 30 dias

 

 

Consulta sql últimos 6 meses  

 

 

select

cod_venda,

convert( nvarchar (10), Data_Venda ,103) as Data_VendaBR, —Conversão para DD/MM/AAAA

valor

from bd_vendas.dbo.tab_venda

where cast(data_venda as date) between cast( getdate() as date) and  cast( dateadd(d, -180, getdate() ) —Filtra o Período dos últimos 6 meses, 180 dias

 

  

Espero ter ajudado.

 Abraços.

 Adilson Paranhos

Sobre Adilson Paranhos 4 Artigos
Formado em Analise e Desenvolvimento de Sistemas, experiência há mais de 10 anos. Amo aprender, ensinar, compartilhar e simplificar coisas... Linguagem T-SQL, consultas básicas e avançadas, filtros, agrupamentos, junções, funções, views, funções de sistemas

Seja o primeiro a comentar

Faça um comentário

Seu e-mail não será publicado.


*