Consultar Meses

29/10/2008

0

Boa tarde,

estou precisando montar um select que me retorne o seguinte.

Em um periodo de Datas entre 01/2008 a 12/2008, suponhamos que os meses 03/2008, 08/2008 e 11/2008 não haja registro.

tem como montar esse retorno via SQL??

Algum amigo poderia me dar uma dica?

no aguardo
Raphael


Rbfonseca

Rbfonseca

Responder

Posts

31/10/2008

Codename.v

Use algo como o seguinte:

declare @variavel as smallint
declare @compara as smallint

set @variavel = 1

while(@variavel <= 12)
begin
        set @compara = (select distinct Month(t.CampoData) from Tabela t where Month(t.CampoData) = @variavel)

        if(@compara is null)
print @variavel

        set @variavel = @variavel + 1
end


Temos duas variáveis uma que será utilizada como um contador de 1 até 12 (12 meses) e outra que sera utilizada para armazenar os meses que estão cadastrados. Se a variável compara for null significca que o mês não está cadastrado e então ele sera exibido para o usuário. Caso contrário nada acontece.

Obs.: Através do método Month(CampoDaTabela) é possivel pegar apenas o mês de um campo do tipo Date.

T+


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar