Ver Mensaje Individual
  #6 (permalink)  
Antiguo 28/07/2011, 09:18
harryp
 
Fecha de Ingreso: mayo-2008
Mensajes: 117
Antigüedad: 16 años, 6 meses
Puntos: 8
Respuesta: Obtener registros con mismo valor en columna pero diferente en otra

Hola leonardo_josue menudo currazo te has pegado ajaja ... muchas gracias por tu tiempo, te lo agradezco muchisimo. Vamos al lio...

La consulta retorna lo deseado, pero parandome a pensar estoy viendo que cuenta las veces que se repite el campo n_tarea, por lo que al no ser clave primaria los dos campos, podrían repetirse registros que coincidiesen con n_tarea que y alterasen el resultado.

Por poner un ejemplo
Código:
CREATE TABLE IF NOT EXISTS lloc (
  id_lloc int not null,
  n_tarea int NOT NULL,
 campo_X int not null
 ) ENGINE=InnoDB;


//luego inserto los registros

(1,1,A),
(1,2,A),
(1,3,A),
(1,3,B),
(2,1,A),
(2,2,A),
(3,1,A);
Si ahora pregunto

Cita:
SELECT n_tarea FROM lloc
WHERE id_lloc IN (1,2) GROUP BY n_tarea HAVING COUNT(*) = 2;
Va a contar 2 veces el registro (1,3) por cumplir la condición.
Por lo que la consulta de gnzsoloyo cumple exactamente con los requisitos que necesito.

Al final queda así :

Código MySQL:
Ver original
  1. SELECT L1.*
  2. FROM objectiu L1 INNER JOIN objectiu L2 ON L1.n_tarea=L2.n_tarea
  3. WHERE L1.id_objectiu  = 1 AND L2.id_objectiu = 2 order by n_tarea

gnzsoloyo Muchas gracias a ti también, lo del código en php lo he puesto por si no se entendía la pregunta, a veces pasa que tu mismo entiendes lo que escribes pero los demás no.
La lógica aplicada de las sentencias ... se me resiste jeje.

Saludos!