Desafio de Consulta !!!

Delphi

26/08/2003

Alguem pra me ajudar.
Preciso elaborar uma consulta que me mostre os clientes que não compram a mais de dois meses por exemplo, e que não se repita os nomes dos clientes no resultado da query, as compras estão em uma tabela de pedido, onde possui a data da venda. Ja tentei colocar data < datavenda, não dá certo o resultado, pois ele só pega que as vendas antes da data, as depois ele ignora mas elas existem, ja tentei between e acontece a mesma coisa, tentei max(datavenda) mas não consegui fazer com que apareça só menores que data da venda. Se alguém puder ajudar, fico grato.


Rocetti

Rocetti

Curtidas 0

Respostas

Rodrigo Bergmann

Rodrigo Bergmann

26/08/2003

select * from clientes
where not exists(select datavenda from pedido where datavenda > :data and cod_cliente = clientes.codigo)


GOSTEI 0
Rocetti

Rocetti

26/08/2003

[quote:148d48947a=´Rodrigo Bergmann´]select * from clientes
where not exists(select datavenda from pedido where datavenda > :data and cod_cliente = clientes.codigo)[/quote:148d48947a]

Ok, era isso mesmo que eu precisava, valeu !!!


GOSTEI 0
Rocetti

Rocetti

26/08/2003

Ok, funcionou legal, só que encontrei outro problema, alem de selecionar os que nao compram, eles também não podem ter pendencias de pagamento a partir do mesmo periodo, tenho um campo chamado de quitado que só recebe a string S quando é totalmente quitado, caso exista pendencia, ele permanece N até que seja quitado. Se puder me ajudar, fico grato.


GOSTEI 0
Torres Delphi

Torres Delphi

26/08/2003

Se este campo estiver na tabela pedido, acrescente AND QUITADO = ´S´

[]´s


GOSTEI 0
Rocetti

Rocetti

26/08/2003

Infelismente não esta, esta em outra tabela chamada receber. Isso é possível de fazer ??? Se puder me ajudar, fico grato.


GOSTEI 0
Rodrigo Bergmann

Rodrigo Bergmann

26/08/2003

Rocetti, é só seguir o mesmo raciocínio:

select * from clientes 
where not exists(select datavenda from pedido where datavenda > :data and cod_cliente = clientes.codigo)
and not exists(select datavencimento from receber where cod_cliente = clientes.codigo and datapagamento is null



GOSTEI 0
POSTAR