Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: dimitrix en 20 Febrero 2012, 19:47 PM

Título: Ayuda con Consulta
Publicado por: dimitrix en 20 Febrero 2012, 19:47 PM
Empecemosm tengo dos tablas (son más ámplias, pero pongo solo lo interesante).

Tabla 1

IDNombretelefono
1Luis666123321
2Carlos632987123
3Miguel626710012


Tabla 2

IDID_clienteid_producto
111
222
312
334
313

Vale y tengo que hacer dos cosas.

1º Sacar todos los Clientes que no tenga el producto (id_producto) 1

1º Sacar todos los clientes que no tenga el producto 1 pero que tengan el 2

He intenado de mil formas pero no me sale :-/
Título: Re: Ayuda con Consulta
Publicado por: HdM en 20 Febrero 2012, 20:16 PM
Buenas.

Monta consultas que excluyan los id de cliente usando "and". Por ejemplo para el primer caso, creo que te valdría:

Código (sql) [Seleccionar]
SELECT *
FROM tabla1
WHERE id in (select distinct id_cliente from tabla2 where id_producto <>1) and id not in (select distinct id_cliente from tabla2 where id_producto =1);


La segunda consulta que planteas, añadiendo una exclusión más, la tendrías montada.

Igual lo que planteo, se podría hacer con una consulta más optimizada mediante inner, pero a priori, lo que te indico creo que te puede valer.

Saludos.