Outra solução provavel voce poderia ter 3 campos na tabela de cientes, onde
ira gravar o numero da ultima compra, data e valor (exemplos). Depois vc
apenas seleciona os clientes que deseja.


-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Miguel Franco Galego
Enviada em: sábado, 20 de fevereiro de 2010 14:03
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: [delphi-br] ajuda em sql

Pode ser feito o select dessa maneira:

select
 a.id_cliente,
 a.cliente   ,
 ( select max(b.dta_compra)
          from compras b
   where b.id_cliente = a.id_cliente ) as dta_compra
from
 cliente a
/
Dessa forma lista todos clientes e suas respectiva data de ultima compra,
caso o cliente nunca tenha comprado o campo será nulo,

Espero ter ajudado,
Em 20 de fevereiro de 2010 07:05, alessandra porto <
alessandraport...@yahoo.com.br> escreveu:

>
>
> esta é uma parte de uma pesquisa grande onde estou meio  com duvidas
> preciso de uma ajudinha     é o seguinte....
>
> tenho 2 tabelas
>
> compras             cliente
>
> id_compras          id_cliente
> id_cliente             cliente
> dta_compra
>
>    preciso selecionar somente a ultima compra (dta_compra)
> dos clientes que possuem compras.
>
>   Pode existir cliente  que nunca comprou e  deve
> retornar na pesquisa que ele possui (zero) compras.
>
>   Portanto possui 70.000 clientes e 30.000 compras
> sendo que parte destes clientes comprou mais de uma
> vez  e só preciso que retorne na pesquisa a ultima compra
> dele.
>  E os demais que nunca compraram preciso listar eles como
> zero(compra)
>
>  Grata pela atenção dos amigos que colaborarem
>
> __________________________________________________________
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>



-- 
____________________________________
M I G U E L    F R A N C O    G A L E G O
INFORMARK / VIRTUALAGE
Analista de Sistema
mig...@infomark.com.br / gale...@gmail.com
Av. Paraíba, 1959, Fundos / Rua José Rodrigues Brianez, 111-A
Cianorte - PR / 87.200-000
(44) 3619-4555 ramal 4727
(44) 9985-1449 celular
(44) 3019-1449 residencial


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



Responder a