Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/10/2006, 00:42
Gustavo_AR
 
Fecha de Ingreso: septiembre-2006
Ubicación: Argentina
Mensajes: 190
Antigüedad: 17 años, 7 meses
Puntos: 1
Consulta Mysql con Left Join

Hola, tengo dos tablas de las cuales 1 pertenece a productos y otra pertenece a fotos. Lo que quiero hacer es que en el sitio se muestren resultados de productos con una foto y con la cantidad de fotos que tiene ese producto. Como esa ficha la voy a repetir, tengo que hacer todo en una sola consulta. La consulta que estoy haciendo me funciona bien...

Código PHP:
SELECT FROM productos_prd LEFT JOIN fotos_prd ON (fotos_prd.dir productos_prd.cod_empresa_prd AND fotos_prd.id_prd productos_prd.ID_productoGROUP BY productos_prd.ID_productoproductos_prd.cod_empresa_prd ORDER BY productos_prd.ID_productofotos_prd.ID_foto 
Esto me devuelve los datos del producto y una foto que pertenezca al producto, agrupo para que no me repita el registro por la cantidad de fotos que tenga y listo. El problema es que el nombre de la foto que me tira en los resultados es aleatoria al parecer, porque en muchos casos me devuelve la primer foto, en otros la ultima, etc. Esto hace que cuando se ingresa en la pagina de detalles del producto o en la carga, el orden de las fotos varie, o mejor dicho, que la primer foto que cargaron como principal no se muestre en la los resultados de busqueda como principal.

Se que no me estoy explicando mucho, pero basicamente funciona como mercadolibre o algo parecido, que al buscar un producto en los resultados te muestra una ficha con la fotito y al entrar te muestra todos los detalles. Imaginense que ven una fotito y al entrar al producto la foto es otra y la que vieron en los resultados esta por el medio de la galería!!
Aclaro que dentro de los detalles, tengo dos consultas separadas para fotos y producto, para que me muestre todas las fotos y ahí si se ve perfecto el orden.