Fórum Query (Como fazer) #29864

16/07/2004

0

Amigos;

Tenho duas tabelas

cliente
num -> INTEGER
nome -> CHAR(3)

pedido
num -> INTEGER
cliente -> INTEGER
valor -> FLOAT(6,2)

Se eu quiser selecionar os clientes q já compraram eu faço
select distinct cliente.nome where cliente.num = pedido.cliente

Como que eu faço para selecionar os clientes que nunca compraram?


Joerli

Joerli

Responder

Posts

16/07/2004

Beppe

Seria algo assim:

select distinct
  nome
from
  cliente
where
  num not in (select distinct cliente from pedido);



Responder

Gostei + 0

17/07/2004

Joerli

Será q não a como fazer sem uma sub-query pois, minha versão do mysql é 3.xx.x e não suporta sub-querys. E eu só poderei atualizar o banco em dezembro


Responder

Gostei + 0

17/07/2004

Beppe

Então acho que vc vai ter que fazer duas queries separadas, e processa-las no seu programa.


Responder

Gostei + 0

19/07/2004

Kandrus

Tenta isso acho que funciona se não funcionar entre em contato que agente descobre como fazer

SELECT clientes.* FROM clientes LEFT JOIN pedidos ON clientes.num=pedidos.num where pedidos.num IS NULL


Responder

Gostei + 0

17/10/2004

Marcopolo5

selecione os clientes em pedidos com valor null e que sejam
cliente.num = pedido.cliente


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar