Optimisation requete SQL pour MySQL

Bonjour,

Est-ce que quelqu’un aurait une idée comment optimiser cette requête.
Elle n’est pas optimimal et dans ce cas précis, elle est trop lourde a tourner sur le serveur.

SELECT demande.DemandeID, avion.NumAvion, avion.NumStation, avion.description, avion.EO, avion.NumPiece, demande.QtyManquante, demande.QtyCommande, fournisseur.FournisseurNom, demande.PO, demande.DateReq, demande.DateDue, demande.DateCommise, responsable.ResponsableNom, type.TypeNom, statut.statutNom, charger.commentaire, acheteur.acheteurNom, demande.Hot FROM demande, fournisseur, avion, charger, responsable, type, statut, acheteur, groupeType where fournisseur.fournisseurID=demande.fournisseurID and avion.DemandeID = demande.DemandeID and demande.ChargerID = charger.ChargerID and charger.ResponsableID = responsable.responsableID and demande.TypeID = type.TypeID and demande.StatutID = statut.StatutID and demande.acheteurID = acheteur.acheteurID and groupeType.GroupeTypeID = type.GroupeTypeID and demande.ResponsableID='2' or demande.ResponsableID2='2';

Merci

as-tu ajouté des index sur les champs qui composent tes conditions?

Peut etre que tu devrait faire des sous-requetes imbriquée plutot qu’une seule avec tous ces and… il y a aussi l’optiion de remplacer tes égalité par des join (a tester)

essai de morceler ta requete en plusieurs requete différents si tu trouves q c’est lourd pour le serveur. Tu ne dois certainement pas avoir besoins d’utiliser toutes tes variables recupérer en meme temps n’est ce pas?

Oui, quand on voit ton from, tu n’utilise pas tout les tables dans le “select” avant le from, de celle utilisée dans le from, il doit y avoir moyen de faire des requêtes imbriquées.
ceci dit, je n’ai pas été voir plus loin:
[troll poilu nettiquette=off]
INDENTE TA REQUÊTE !!!
[/troll]
désolé, mais les requêtes de 10 lignes sur out-mille jointure sans un seul retour chariot, pas même un epsace, faut être tombé dedant quand on était petit .
:iconne qui vomit:

:smiley: (ne le prend pas au premier degré hein) :wink:

Oui, j’ai besoin de tous ces valeurs en même temps. Elles sont reprise dans un rapport par la suite.

J’avais envisager le JOIN, je vais devoir regarder de plus près comment il fonctionne.

Par contre, en mettant ( ) au tour du OR, j’ai acceleré énormement la requete.