Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

EDSON FEITOSA

Como trazer a data da ultima compra de um CPF.

Recommended Posts

Bom dia pessoal,

Como posso fazer para a consulta abaixo trazer somente a data da ultima compra?? Do modo que está essa consulta, ela está trazendo não só a ultima compra mas todos os dias de compra do CPF:

select DISTINCT CLI_CGC AS CPF,
                CLI_NOME AS NOME,
                CLI_TELEFONE AS TELEFONE,
                CLI_NASCIMENTO AS DataDeNascimento,
                CAI_VALOR,
                CLI_ULT_COMPRA=MAX(CLI_ULT_COMPRA),
                FIL_RAZAO_SOCIAL AS LOJA
from CAIXA,CLIENTES,FILIAL
where CLI_CODIGON=CAI_CODIGON
and FIL_CODIGO=CAI_FILIAL
and CLI_ULT_COMPRA between '25-10-2016' and '25-01-2017'
and FIL_RAZAO_SOCIAL in ('9986-GONCALVES DIAS (RJ)')
and CAI_VALOR <> 0 and CLI_TELEFONE not like ('(__)0%') and
CLI_TELEFONE not like ('(__)1%')
and CLI_TELEFONE not like ('(__)7%')
and CLI_TELEFONE not like ('(__)8%')
and CLI_TELEFONE not like ('(__)9%')
and CLI_TELEFONE not like ('(__)22222-222%')
and CLI_TELEFONE not like ('(__)21111-111%')
and CLI_TELEFONE not like ('+%')
and CLI_TELEFONE not like ('(__)2222-222%')
GROUP BY CLI_CGC,
         CLI_NOME,
         CLI_TELEFONE,
         CLI_NASCIMENTO,
         CAI_VALOR,
         CLI_ULT_COMPRA,
         FIL_RAZAO_SOCIAL

Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deve ser algo assim, (sem conhecer as chaves)

select DISTINCT CLI_CGC AS CPF,
                CLI_NOME AS NOME,
                CLI_TELEFONE AS TELEFONE,
                CLI_NASCIMENTO AS DataDeNascimento,
                CAI_VALOR,
                CLI_ULT_COMPRA,
                FIL_RAZAO_SOCIAL AS LOJA
from CAIXA,CLIENTES,FILIAL
where CLI_CODIGON=CAI_CODIGON
and FIL_CODIGO=CAI_FILIAL
and CLI_ULT_COMPRA between '25-10-2016' and '25-01-2017'
and FIL_RAZAO_SOCIAL in ('9986-GONCALVES DIAS (RJ)')
and CAI_VALOR <> 0 and CLI_TELEFONE not like ('(__)0%')
and CLI_TELEFONE not like ('(__)1%')
and CLI_TELEFONE not like ('(__)7%')
and CLI_TELEFONE not like ('(__)8%')
and CLI_TELEFONE not like ('(__)9%')
and CLI_TELEFONE not like ('(__)22222-222%')
and CLI_TELEFONE not like ('(__)21111-111%')
and CLI_TELEFONE not like ('+%')
and CLI_TELEFONE not like ('(__)2222-222%')
and CLI_ULT_COMPRA = (select MAX(CLI_ULT_COMPRA)
                      from CLIENTES CLIENTES2
                      where CLIENTES2.CLI_CODIGON = CLIENTES.CLI_CODIGON)
GROUP BY CLI_CGC,
         CLI_NOME,
         CLI_TELEFONE,
         CLI_NASCIMENTO,
         CAI_VALOR,
         CLI_ULT_COMPRA,
         FIL_RAZAO_SOCIAL

Compartilhar este post


Link para o post
Compartilhar em outros sites

Engraçado, a sua consulta não deu diferença, ela está trazendo a mesma coisa como se não tivesse feito mudanças na consulta, o problema é o seguinte, se eu tirar a coluna CAI_VALOR, a consulta funciona direitinho, mas se eu deixar a coluna CAI_VALOR, ela traz várias compras de um CGC com a mesma data, mas quando eu confiro no sistema as consta o numero de vezes conforme na consulta, mas com datas diferentes,ex:

cgc nome valor data

000-000-000-00 paula 50,00 10-10-2016

000-000-000-00 paula 70,00 10-10-2016

000-000-000-00 paula 90,00 10-10-2016

só que quando eu confiro no sistema o numero de vezes bate certinho só que as datas são diferentes mas na consulta as datas vem as mesmas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.