Mysql
 sql >> Database >  >> RDS >> Mysql

Query mysql lenta, copia nella tabella tmp, utilizzando filesort

NULL vs NOT NULL -- Usa NOT NULL a meno che tu non abbia un motivo commerciale per NULL .

Usa InnoDB con la relativa PRIMARY KEY su ogni tavolo. Probabilmente sarà più veloce.

"Usare l'indice", dove ha senso, aiuterà alcuni.

product.categoryid = 4871 non appartiene al ON clausola per vendorimport; spostalo in un WHERE clausola. (Questo non accelererà le cose.)

La tua query non può essere ulteriormente ottimizzata:deve fai tutti i JOIN e consegna tutte le righe.

Ma... Vuoi davvero 3917 righe di output? Puoi gestire questa cosa? Forse ne vuoi solo alcuni e potresti filtrarli durante il SELECT? Ciò potrebbe velocizzare le cose.