IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Requête trop longue


Sujet :

Requêtes MySQL

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut Requête trop longue
    Bonjour,

    je transforme une base Access en MySQL. La requête suivante dure plus d'une heure (je l'ai arrêtée avant la fin) alors que la version Access dure moins de 2 minutes. Il y a des indexes sur tous les champs utilisés dans les jointures et la clause WHERE.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    SELECT DISTINCT Machin_aff.AffStruct_NomCourt AS Unite_Responsabilite_Machin, type_compte.Origine_Personne, 
    Machin_emp.Employe_CodeEmploye, Machin_emp.Employe_Nom, Machin_emp.Employe_Prenom, Machin_emp.Employe_Debut, 
    Machin_emp.Employe_Fin, Machin_emp.Employe_Statut, Machin_user.User_Login, Machin_user.User_Debut, Machin_user.User_Fin, 
    Machin_user.User_Actif AS User_NonVerrouille, roles_concatenes.Roles, Machin_aff.AffStruct_NomCourt, 
    Machin_aff.AffStruct_BrisdeGlace, Machin_aff.AffStruct_Debut, Machin_aff.AffStruct_Fin, 
    aff_struct_concatenee.Affectations_Structure AS Liste_Aff_Struct_Actives, 
    aff_struct_concatenee_bg.Affectations_Structure AS Liste_Aff_Struct_BG_Actives, Truc_resultat_all.UNI_UF, 
    Truc_resultat_all.UNI_UG, Truc_resultat_all.UNI_LIBELLE, Truc_resultat_all.AFF_DATE_DEBUT, 
    Truc_resultat_all.AFF_DATE_FIN, Truc_resultat_all.PRO_LIBELLE
    FROM 
    (((type_compte INNER JOIN 
    	(((Truc_resultat_all RIGHT JOIN Machin_emp ON Truc_resultat_all.EMP_MATRICULE_COURT = Machin_emp.Employe_CodeEmploye) LEFT JOIN aff_struct_concatenee ON Machin_emp.Employe_IDMachin = aff_struct_concatenee.Employe_IDMachin
    		) LEFT JOIN aff_struct_concatenee_bg ON Machin_emp.Employe_IDMachin = aff_struct_concatenee_bg.Employe_IDMachin
    	) ON type_compte.Employe_IDMachin = Machin_emp.Employe_IDMachin
    	) LEFT JOIN Machin_aff ON Machin_emp.Employe_IDMachin = Machin_aff.Employe_IDMachin
    	) LEFT JOIN Machin_user ON Machin_emp.Employe_IDMachin = Machin_user.Employe_IDMachin
    ) LEFT JOIN roles_concatenes ON Machin_user.User_IDMachin = roles_concatenes.User_IDMachin
    WHERE 
    (Machin_emp.Employe_Fin Is Null Or Machin_emp.Employe_Fin>Now()) AND 
    (Machin_user.User_Fin Is Null Or Machin_user.User_Fin>Now()) AND 
    Machin_aff.AffStruct_NomCourt Like "087%" AND 
    (Machin_aff.AffStruct_Fin Is Null Or Machin_aff.AffStruct_Fin>Now()) AND 
    LENGTH(AffStruct_NomCourt)=6;
    Connaissez vous un outils permettant voir ce qui ne va pas ?
    Pouvez-vous jeter un œil sur cette requête pour l'améliorer ?
    Christophe

    Pensez à mettre quand c'est le cas.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut
    Il manquait un index qui avait été nommé comme un autre dans le script de création de table.
    Christophe

    Pensez à mettre quand c'est le cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête trop longue en VBA
    Par NicoMon dans le forum VBA Access
    Réponses: 4
    Dernier message: 07/08/2007, 10h25
  2. requéte trop longue sous ie
    Par devboy dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 16/05/2007, 16h43
  3. Réponses: 4
    Dernier message: 15/05/2007, 10h10
  4. [Requête] Requête trop longue
    Par Ithilien dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 08/01/2007, 10h58
  5. [MySQL] Requête trop longue ?
    Par Thomas1434 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 24/03/2006, 21h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo