Buenas gente, tengo unas tablas con unos cuantos registros (foto e imatges tienen aproximadamente 100k registros cada una mientras que familia y autor no llegan a los 3k). La cosa es que hay información interrelacionada entre las distintas tablas que es:
Cada foto tiene una familia, un autor y una imagen. Están relacionados con un id, es decir cada autor y familia tienen un identificador que es el que está guardado a la tabla de foto.
Entonces me gustaría recuperar todas las fotos de un pueblo determinado (cada foto procede de un pueblo) con la información completa de cada autor y familia también. Por lo que estoy viendo en el servidor mi consulta es muy poco optima porqué satura toda mi CPU y tarda un montón.
Código MySQL:
Ver originalSELECT f.des
, f.referencia
, f.familia
AS num
, f.fons
, a.nombre
AS autor
, fa.nombreMostrar
AS familia
, img.url
WHERE fa.pueblo
='$pueblo'
GROUP BY img.referencia
) img
ON f.referencia
=img.referencia
¿Como podría optimizar la consulta?
Un slaudo y muchas gracias!