none
Comparar dois valores e retornar. RRS feed

  • Pergunta

  • Boa tarde galera,

    Preciso comparar um valor (codigo do cliente) em tabelas diferentes.

    Minha F2 é tabelas onde fica os pedidos faturados e minha A1 é o cadastro de cliente.

    Como faço para que o codigo de cliente seja o mesmo valor na minha tabela de faturados.

    Está certa a query abaixo?

    SELECT A1_COD AS CODIGO, A1_NOME AS NOME , * 
    FROM SF2010 F2, SA1010 A1 --tabelas
    WHERE F2.F2_CLIENTE = A1.A1_COD --valores que tem que ser iguais
    AND   F2.F2_EMISSAO >= '20120101' -- data da pesquisa
    AND   F2.D_E_L_E_T_ = '' --remove os deletados
    AND   A1.D_E_L_E_T_ = ''  --remove os deletados

    quinta-feira, 14 de maio de 2015 19:18

Respostas

  • Boa tarde,

    Acho que deve funcionar como você postou mas seria melhor utilizar a sintaxe com Join:

    SELECT A1_COD AS CODIGO, A1_NOME AS NOME , * 
    FROM SF2010 F2
    INNER JOIN SA1010 A1 
        ON A1.A1_COD = F2.F2_CLIENTE
    WHERE  
        F2.F2_EMISSAO >= '20120101' AND
        F2.D_E_L_E_T_ = '' AND   
        A1.D_E_L_E_T_ = '' 

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quinta-feira, 14 de maio de 2015 19:32

Todas as Respostas

  • Boa tarde,

    Acho que deve funcionar como você postou mas seria melhor utilizar a sintaxe com Join:

    SELECT A1_COD AS CODIGO, A1_NOME AS NOME , * 
    FROM SF2010 F2
    INNER JOIN SA1010 A1 
        ON A1.A1_COD = F2.F2_CLIENTE
    WHERE  
        F2.F2_EMISSAO >= '20120101' AND
        F2.D_E_L_E_T_ = '' AND   
        A1.D_E_L_E_T_ = '' 

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quinta-feira, 14 de maio de 2015 19:32
  • Boa, sou novo ainda nas query's 

    ficou ótimo assim como tu me falou, e ficou muito mais rápida.


    SELECT A1_COD AS CODIGO, A1_NOME AS NOME_CLIENTE, A1_NREDUZ AS NOME_REDUZ ,
     A1_CGC AS CNPJ_CPF , A1_PESSOA AS TIPO ,
    F2_DOC AS NF, F2_SERIE AS SERIE ,
    F2_EMISSAO AS EMISSAO  

    FROM SF2010 F2
    INNER JOIN SA1010 A1 
    ON (F2.F2_CLIENTE = A1.A1_COD)

    WHERE F2.F2_EMISSAO >= '20120101'
    AND   F2.D_E_L_E_T_ = ''
    AND   A1.D_E_L_E_T_ = ''
    ORDER BY F2_EMISSAO

    quinta-feira, 14 de maio de 2015 19:44