Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/11/2009, 07:04
ssoler
 
Fecha de Ingreso: abril-2009
Mensajes: 6
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Consulta 3 tablas LEFT JOIN sin repetir los datos del ultimo join datos

Hola,

Tengo 3 tablas:
usuarios
(id, nombre, mail, etc.)
links
(id,id_usr,texto)
comentarios
(id,id_usr,texto)

al hacer la consulta
Código:
SELECT * 
FROM (
(usuarios u 
LEFT JOIN 
links l ON l.id_usr = u.id) 
LEFT JOIN 
comentarios ON c.id_usr = u.id
);
Obtengo una tabla con todos los datos. Pero todos los comentarios aparecen repetidos para cada entrada de la tabla link.

Busco un resultado similar al ejemplo:

usuarios | links | comentarios
----------------------------------------
usr1 | link1 | comentA
usr1 | link5 | comentH
usr2 | link2 | comentB
usr2 | link3 | comentC
usr2 | link4 | comentD
usr3 | (null) | (null)
usr4 | link6 | comentE
usr4 | (null) | comentF
usr4 | (null) | comentG

En definitiva, las tablas links y comentarios son independientes, quiero listar en la búsqueda todos los links y los comentarios de cada usuario pero sin repetir los comentarios para cada entrada de link. ¿alguien me sabe decir como se escribe eso en SQL?

Última edición por ssoler; 06/11/2009 a las 07:06 Razón: Ventana de codigo no visible por barra de desplazamiento