Bonjour,
J'aimerais optimiser une requête sur une base de données MySQL que voici:
Pour vous faire un peu le portrait de cette requête, elle couvre 3 tables réparties dans 2 BD:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT adresses.ville, COUNT( mac ) AS CGR_VoIP FROM adresses LEFT JOIN community ON community.ville = adresses.ville WHERE community.region IN ('mauricie') AND adresses.mac IN (SELECT adresses.mac FROM adresses, BTS.MGW WHERE adresses.mac = BTS.MGW.mac_modem) GROUP BY community.ville ORDER BY CGR_VoIP
BD#1 ==> BTS contient la table MGW
BD#2 ==> Rapports contient les tables adresses et community
Présentement cette requête prend 1.3 secondes et j'aimerais avoir plus court. Donc j'ai essayer de mettre des index sur tout les champs compris dans cette requête. Ça a amélioré un peu le temps de recherche mais de très peu.
Est-ce qu'au premier coup d'oeil quelqu'un aurait une piste à me donner pour optimiser cette requête? Ou est-ce que cela vous prend plus d'info?
Merci d'avance pour votre aide.
Partager