Ver Mensaje Individual
  #10 (permalink)  
Antiguo 01/10/2012, 16:02
status02
 
Fecha de Ingreso: septiembre-2012
Mensajes: 25
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Relacionar 3 tablas Mysql

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Es lo que quería comprobar, ya que muchas veces insisten en que una columna existe, o se llama así, y termina siendo que no es tal.
Ahora bien, en ese contexto, el problema se debe estar dando porque estás mezclando un JOIN implícito con un LEFT JOIN, lo que genera resultados totalmente incorrectos.
Cuando usas INNER/RIGHT/LEFT JOIN no puedes usar el implícito (la coma).
La sintaxis correcta para tu caso sería (usando alias):
Código MySQL:
Ver original
  1. SELECT P.*, C.*, I.*
  2. FROM post P
  3.     INNER JOIN categoria C ON P.id_cat = C.id_categoria
  4.     LEFT JOIN imagenes I ON P.id_post = I.id_post;

Como problema potencial encuentro que puede producirse una multiplicación de resultados porque estás estableciendo una relación en estrella, lo que no es una buena idea.
Gracias, y como decis me da una multiplicacion de datos como antes, mi pregunta ahora es ¿como relaciono estas 3 tablas ? para tener resultados correctos, es mi primer trabajo que estoy haciendo pero me he topado con algunos problemas como el mensionado. Desde ya agradesco tu ayuda.