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

Filtrar registros da tabela à esquerda em um LEFT JOIN


Guest Eduardo Coimbra

Pergunta

Guest Eduardo Coimbra

Bom dia! Tenho uma dúvida...

Sabe-se que ao utilizar um LEFT JOIN, todos os registros da tabela à esquerda são exibidos independente de existir correspondência na tabela à direita.

Mas eu tenho uma situação a qual eu não quero que sejam exibidos TODOS os registros da esquerda.

Existe um campo de DATA na minha tabela da esquerda, e eu quero que sejam considerados apenas os registros de um determinado intervalo de data.

No meu SELECT abaixo, estou tentando fazer uma consulta pegando apenas os registros da tabela à esquerda (SE5050 as E) com data (E5_DATA) entre 01 e 31 de janeiro, para que apareçam correspondência ou não destes registros na tabela à direita (CV3050 as CV). Mas do jeito que está, o SELECT está pegando TODOS os registros da esquerda, não respeitando meu filtro de data (que eu coloquei em vermelho). Como resolvo isso? Não se preocupem com os formatos dos campos, a data no meu BD é assim mesmo e funciona normalmente em qualquer outra situação de select.

SELECT

E.E5_NUMERO,E.E5_LA,E.E5_DATA,E.E5_TIPO,E.E5_PREFIXO,E.E5_PARCELA,E.E5_CLIFOR,E.E5_BENEF,

CONVERT(NUMERIC(15,2),ROUND(E.E5_VALOR,2)) AS E5_VALOR,E.E5_DOCUMEN,E.E5_RECPAG,E.E5_BENEF,E.E5_HISTOR,E.E5_TIPODOC,

C.CT2_DATA,C.CT2_LOTE,C.CT2_SBLOTE,C.CT2_DOC,C.CT2_LINHA,C.CT2_DC,C.CT2_DEBITO,C.CT2_CREDIT,

CONVERT(NUMERIC(15,2),ROUND(C.CT2_VALOR,2)),C.CT2_HIST,C.CT2_ORIGEM

FROM SE5050 AS E

LEFT JOIN CV3050 AS CV ON

E.E5_DATA >= '20080101' AND E.E5_DATA <= '20080131' AND E.E5_FILIAL = '01' AND E.D_E_L_E_T_ <> '*'

AND E.E5_DATA = CV.CV3_DTSEQ AND CV.CV3_FILIAL = '01' AND CV.CV3_TABORI = 'SE5' AND

CV.CV3_RECORI = E.R_E_C_N_O_ AND

CV.D_E_L_E_T_ <> '*' LEFT JOIN CT2050 AS C ON

C.CT2_FILIAL = '01' AND C.R_E_C_N_O_ = CV.CV3_RECDES AND C.D_E_L_E_T_ <> '*' ORDER BY E.E5_DATA,E.E5_NUMERO,C.CT2_DOC,C.CT2_LINHA ASC

Desde já agradeço!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

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,5k
×
×
  • Criar Novo...