Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Intervalo entre datas


Fernandinha

Pergunta

Bom dia pessoal,

Estou com problemas com datas, vocês poderiam me dar um help por favor?

Tenho duas tabelas, na primeira tabela tenho as seguintes informações:

Tabela A

DtInicTurma DtFinalTurma

2011-08-15 00:00:00.000 2011-08-24 00:00:00.000

Na outra tabela tenho as datas:

Tabela B

DtRegistro

2011-08-15 00:00:00.000

2011-08-16 00:00:00.000

2011-08-17 00:00:00.000

2011-08-22 00:00:00.000

2011-08-23 00:00:00.000

2011-08-24 00:00:00.000

Preciso saber quais datas não tenho na tabela B de acordo com o range passado na tabela A.

Desde já agradeço a ajuda.

Editado por Fernandinha
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Bom dia Fernandinha,

Fiz um exemplo comentado com duas temporárias. Espero que ajude.

-- Criação das temporárias
create table #TabelaA (DtInicTurma datetime, DtFinalTurma DATETIME)
create table #TabelaB (DtRegistro DATETIME)

-- Inserção dos dados
INSERT INTO #TabelaA VALUES ('2011-08-15 00:00:00.000', '2011-08-24 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-15 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-16 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-17 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-22 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-23 00:00:00.000')
INSERT INTO #TabelaB VALUES ('2011-08-24 00:00:00.000')

-- Selecionar e executar daqui até o final
DECLARE @DataInicial DATETIME
DECLARE @DataFinal DATETIME

SET @DataInicial = (SELECT DtInicTurma from #TabelaA) 
SET @DataFinal =  (SELECT DtFinalTurma from #TabelaA)

WHILE @DataInicial <= @DataFinal
BEGIN
    IF (SELECT top 1 1 FROM #TabelaB WHERE DtRegistro=@DataInicial) IS NULL 
    BEGIN
        PRINT convert(varchar(10),@DataInicial, 103)    
    END
    SET @DataInicial = DATEADD (d, 1, @DataInicial)
END

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...