Pour de meilleures performances dans les requêtes GROUP BY, vous devez ajouter un index de couverture comme :
ALTER TABLE arg_rec ADD KEY ix1(STE_ID, PNT_NO, YR, MN,AVR_WS, AVR_PW );
Pour couvrir l'index, vous ajoutez :
- colonnes utilisées dans les clauses where d'abord, puis
- colonnes utilisées dans group by, puis
- colonnes utilisées dans l'ordre de, puis
- colonnes utilisées dans select.
Visitez pour plus de détails :Group By Optimization in MySQL
-
Vous pouvez mettre en cache des requêtes dans MySQL en activant le butin du cache de requêtes sur Configuration du cache de requête
-
Vous pouvez stocker YR, MN, DY, HR, MI, SC dans une seule colonne ayant le type de données comme
TIMESTAMPce qui augmentera les performances d'indexation et de regroupement par opération.