Tal como pueden ver en la imagen que inserte, lo que quiero es hacer una consulta donde me muestre “la localidad” junto con el inmueble y solamente una imagen y NO todas las imágenes.
Al principio probé con esta consulta:
SELECT inmuebles.contrato, inmuebles.id, inmuebles.tipo, localidades.ciudad, inmuebles.descripcion, imagenes.imagen, inmuebles.precio
FROM localidades
INNER JOIN inmuebles ON localidades.id = inmuebles.id_localidad
LEFT JOIN imagenes ON inmuebles.id = imagenes.id_inmueble
Pero el problema era que me mostraba todas las imagenes de uno de los inmuebles y port al motivo los inmuebles se repetian mas de una vez, yo lo que quiero es que me muestre un inmueble con una imagen.
Luego me pasaron esta otra consulta:
SELECT
I.contrato,
I.id,
I.tipo,
L.ciudad,
I.descripcion,
G.imagen,
I.precio
FROM localidades L
INNER JOIN inmuebles I ON L.id = I.id_localidad
LEFT JOIN
(SELECT *
FROM
(SELECT *
FROM imagenes
ORDER BY RAND())
GROUP BY G.id_inmueble) G ON I.id = G.id_inmueble;
Pero no me sirve porque me da este error:
Every derived table must have its own alias
En esta última consulta ya estamos entrando en el campo de las subconsultas que es algo que nunca había trabajado y me esta desorientando bastante.
No pensé que fuera tan complejo lo que quería hacer.
Heeeeeeeeelp!!!