Questa query ci mette 10 secondi ad essere eseguita:
la tabella prodotti ha 2500codice:SELECT prodotti.id, COUNT( prodotti.id ) AS n, prodotti.campo1......20 FROM prodotti JOIN tab2 ON ... JOIN tab3 ON ... LEFT JOIN tab4 ON ... JOIN tab5 ON ... JOIN tab6 ON ... GROUP BY prodotti.id ORDER BY n DESC LIMIT 0 , 6;
tab2 2500
tab3 170
tab4 1500
tab5 2500
tab6 135.000
C'è un modo per migliorare questa query? 10 secondi sono improponibili! D'altra parte i record sono quelli, non è che posso eliminarli. Più che altro quello che crea lentezza è l'ultima Join con tab6 che ha 135.000, quanto tab6 aveva poche centinaia di record tutto era ok, ma ora che ne ha così tanti....è lentissimo!

Rispondi quotando
mi sono perso! cosa intendi x definire un indice? io faccio come nel tuo esempio tab1 JOIN tab2 ON tab1.camo_id=tab2.id_tab1, è sufficente questo? Anche xke se non facessi così come faccio a definire gli indici?
