Salut !
Pour un passage sur un hébergeur payant, je chercha a optimiser un peu mes acces à la base. (Chez free j'avais aucun pb)
Mon site traite de topos et de photos associés a ces topos
Ma base : 2 tables (simplifiée)
Je souhaite afficher sur ma page d'accueil les 10 derniers topos avec le nbre de photos associées.
Pour l'instant je sélectionnais les 10 derniers topos et je faisais une boucle pour selectionner le nbre de photos associées.
Je peux faire tout d'un coup avec la requete suivante :
Le problème est que c'est extremement long. J'ai l'impression qu'il balaye toute la table topos (500 entrees).
Y'a un truc que je peux optimiser ?
Comment feriez vous ?
Pour un passage sur un hébergeur payant, je chercha a optimiser un peu mes acces à la base. (Chez free j'avais aucun pb)
Mon site traite de topos et de photos associés a ces topos
Ma base : 2 tables (simplifiée)
Code:
topos
-----
id
nom
photos
-------
id
id_topo
photo
Pour l'instant je sélectionnais les 10 derniers topos et je faisais une boucle pour selectionner le nbre de photos associées.
Je peux faire tout d'un coup avec la requete suivante :
Code:
SELECT topos.id,topos.nom,count(photos.id) as nbp FROM topos LEFT JOIN photos ON photos.id_topo=topos.id GROUP BY topos.id ORDER BY topos.id DESC limit 10
Le problème est que c'est extremement long. J'ai l'impression qu'il balaye toute la table topos (500 entrees).
Y'a un truc que je peux optimiser ?
Comment feriez vous ?