La tabla IMAGEN tiene un campo "estado" que indica P si la imagen es la principal de la galería o que sale por default. Y N si es normal
Mi meta es hacer un listado de los productos además de mostrar esa imagen default.
Por ahora mi consulta es así:
Código:
De esta manera me muestra todos los productos pero me muestra la primera imagen insertada en la tabla.SELECT p.producto_id, producto_nombre, i.producto_imagen_thumb, i.producto_imagen_estado FROM producto p LEFT JOIN (SELECT producto_id, producto_imagen_id FROM producto_galeria GROUP BY producto_id) AS g ON p.producto_id=g.producto_id LEFT JOIN (SELECT producto_imagen_id, producto_imagen_thumb, producto_imagen_estado FROM producto_imagen) AS i ON g.producto_imagen_id=i.producto_imagen_id ORDER BY producto_nombre ASC
y este es el resultado:
Código:
Lo hice con LEFT JOIN ya que algunos registros no tienen imagenes necesariamente por eso algunos me resultan NULL.id Producto Imagen Estado --------------------------------------------- 1 Gatos 1.jpg N 2 Perros 2.jpg N 3 Monos NULL NULL 4 Aves NULL NULL
Ahora si yo quisiera agregar una condición WHERE en la relación galeria-imagen donde indico el tipo de estado "P" me resulta esto:
Código:
SELECT p.producto_id, producto_nombre, i.producto_imagen_thumb, i.producto_imagen_estado FROM producto p LEFT JOIN (SELECT producto_id, producto_imagen_id FROM producto_galeria GROUP BY producto_id) AS g ON p.producto_id=g.producto_id LEFT JOIN (SELECT producto_imagen_id, producto_imagen_thumb, producto_imagen_estado FROM producto_imagen WHERE producto_imagen_estado='P') AS i ON g.producto_imagen_id=i.producto_imagen_id ORDER BY producto_nombre ASC
Y el resultado es este:
Código:
Como ven no captura las imagenes con el estado "P"... intenté con ORDER BY producto_imagen_estado haber si la "P" se ponía arriba de la "N" pero nada!id Producto Imagen Estado --------------------------------------------- 1 Gatos NULL NULL 2 Perros NULL NULL 3 Monos NULL NULL 4 Aves NULL NULL
Mi intención es llegar a :
Código:
No sé que más agregarle o corregir en el query, espero me hayan entendido y me puedan ayudar. Saludos! id Producto Imagen Estado --------------------------------------------- 1 Gatos 5.jpg P 2 Perros 9.jpg P 3 Monos NULL NULL 4 Aves NULL NULL