20 messages in com.mysql.lists.mysql-esRe: problema con consulta
FromSent OnAttachments
Ray Garcia14 Mar 2006 00:50 
Jesús Gómez14 Mar 2006 00:59 
Ray Garcia14 Mar 2006 01:13 
Ray Garcia14 Mar 2006 03:40 
juan juan15 Mar 2006 00:49 
Ray Garcia15 Mar 2006 03:07 
juan juan15 Mar 2006 07:06 
Ray Garcia15 Mar 2006 08:04 
jgo...@net2u.es15 Mar 2006 08:28 
Ray Garcia15 Mar 2006 08:48 
Daniel Egea15 Mar 2006 09:03 
Daniel Egea15 Mar 2006 09:04 
Ray Garcia15 Mar 2006 09:30 
Alvaro Cobo15 Mar 2006 11:27 
Alvaro Cobo15 Mar 2006 11:42 
Ray Garcia16 Mar 2006 02:53 
Daniel Egea16 Mar 2006 03:54 
Ray Garcia16 Mar 2006 04:15 
Ing. Edwin Cruz16 Mar 2006 08:20 
Ray Garcia17 Mar 2006 00:56 
Subject:Re: problema con consulta
From:Ray Garcia (ray.@gmail.com)
Date:03/14/2006 03:40:21 AM
List:com.mysql.lists.mysql-es

Hola de nuevo.

Antes tuve un problema con una consulta sql, y Jesús me echó una mano recomendandome el uso de IN.

Ahora se pq descarté en su momento el uso de IN.

Yo tengo una serie de secciones, digamos (1,3,5,7), pues esa sql me devuelve como resultado todos los que al menos tengan una de esas secciones. Es decir, si tengo un contacto que pertenece a la seccion 1,3 y 5, otro que tiene la 1,3,5,7 y otro que tiene la 3,5,7,8,9, todos estos contactos me saldrian, cuando a mi solo me interesa que salgan aquellos que solamente tienen exactamente esas secciones agregadas, o más, pero como minimo, todas las secciones que se incluyen en la orden IN.

Alguna idea sobre como hacerlo?

Gracias.

Vaya, ya habia probado asi, no salia como queria pero en un acto de inspiracion he agrupado por el id de usuario, y mas o menos sale lo que yo queria. De todas maneras ha de haber otra solucion para que salga sin tener que agrupar por ningun campo.

Muchas gracias Jesús.

Jesús Gómez escribió:

Prueba asi

select nombre from contacto,sectores_contacto where sectores_contacto.id_sectores in (1,3,5,7) and contactos.id=sectores_contactos.id_contacto

Hola a todos. Ante todo saludaros pues este es el primer mensaje que escribo en esta lista.

Estoy desarrollando una aplicacion en php atacando a una bbdd mysql. El problema es que tengo una consulta que no consigo que salga tal cual yo quiero.

Tengo una tabla contacto, una tabla sectores y una tabla sectores -contacto que relaciona ambas tablas.

La tabla contacto tiene los campos: ID, NOMBRE, CARGO. La tabla Sectores tiene los campos: ID, NOMBRE La tabla sectores-contacto tiene los campos: ID_CONTACTO, ID_SECTORES

Cada contacto puede pertenecer a uno o varios sectores. Por lo que en la tabla sectores-contacto puede haber varias entradas con el mismo id_contacto.

El problema está al consultar. Quiero hacer una consulta tipo: "Seleccioname todos los usuarios que pertenezcan al sector 1, al 3, al 5 y al 7". Yo la intentaba asi:

Select NOMBRE from contacto, sectores-contacto, sectores where sectores-contacto.ID_CONTACTO = contacto.ID and sectores-contacto.ID_SECTORES = 1 AND sectores-contacto.ID_SECTORES = 3 AND sectores-contacto.ID_SECTORES = 5 AND sectores-contacto.ID_SECTORES = 7.

Como ya sabreis, esa consulta no es valida. Alguien daria con la tecla y me explicaria como podria hacerlo.

Saludos a todos los listeros.

Perdon, he enviado el mensaje con otra direccion de correo y no se si habrá llegado. Reenvio.