Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/09/2011, 13:39
pinchu
 
Fecha de Ingreso: septiembre-2009
Mensajes: 215
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Problema con consulta (full outer join?)

Cita:
Iniciado por gnzsoloyo Ver Mensaje
El problema es lacadena de dependencias del LEFT JOIN. En los casos en que que hay más de una tabla es conveniente usar el formato compelto ON campo1 = campo2, y no el USING(), porque debe realizarse la relación de cada una de las tablas secundarias con usuario.
Tal y como la pones, están ratando de relacionarse todas con todas, y eso no es posible en el caso que encionas. En otras palabras, están funcionando como un INNER JOIN con un único campo de relación.

Prueba:
Código MySQL:
Ver original
  1.     u.nombre,
  2.     u.apellidos,
  3.     u.id_usuario,
  4.     n.fecha,
  5.     n.tipo,
  6.     nd.accion ,
  7.     nd.id_deporte,
  8.     nd.nombre_deporte,
  9.     na.accion,
  10.     na.id_actividad
  11. FROM usuarios u
  12. INNER JOIN noticias n ON u.id_usuario = nf.id_usuario
  13. LEFT JOIN noticias_deportes nd  ON u.id_usuario = nd.id_usuario
  14. LEFT JOIN noticias_actividades na  ON u.id_usuario = na.id_usuario
  15. LEFT JOIN noticias_fotos nf  ON u.id_usuario = nf.id_usuario
  16. WHERE n.id_usuario = '3'
Esto no funciona, el tema es que yo relaciono primero las noticias con usuarios con id_usuario y luego ese bloque, con todas las noticias se relaciona con id_noticia.