Bonjour à tous,
Je fais appel à vous car j'ai un problème de temps d'execution d'une requête sous Access et peut être quelqu'un sait comment "optimiser" celle-ci.
Tous les mois, je récupère une extraction de la base des contrats à partir du logiciel de gestion des contrats que j'importe dans Access. Mon problème intervient lorsque je veux la comparer avec la base du mois précédent. Ci-dessous les différentes étapes:
- Requête 1 : j'ajoute une clé primaire (concaténation de 3 champs) sur la table "BASE CONTRATS N-1"
- Requête 2 : j'effectue la même requête sur la table "BASE CONTRATS N"
- Requête 3 : Je chercher à savoir les contrats pour lesquels le montant a augmenté d'un mois sur l'autre. je lie mes 2 requêtes entre elles et je demande la liste des contrats présents dans la table "N" sui le sont aussi dans table "N-1" avec les montants pour les 2 mois. (cf. ci-dessous).
Pb : les 2 tables font environ 75000 lignes et le temps d'execution est très très très long, voire même plante avant d'arriver à son terme. Si quelqu'un peut m'aider sur le sujet, je lui en serais très reconnaissant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT [PF N avec Clé Primaire].[Clé primaire], [PF N avec Clé Primaire].Montant, [PF N-1 avec Clé Primaire].Montant FROM [PF N avec Clé Primaire] LEFT JOIN [PF N-1 avec Clé Primaire] ON [PF N avec Clé Primaire].[Clé primaire] = [PF N-1 avec Clé Primaire].[Clé primaire];
merci d'avance
Partager