Bonjour la communauté,
J'ai trois tables avec des millions d'enregistrements.
J'essaie de faire une requête en jointure simple pour regrouper différentes informations des employés en me basant sur les conditions suivantes :
- e.emp_NUMDOS - numéro dossier de l'employé de la table "employee"
- t.tr_MANUMDOS - numéro dossier de l'employé de la table "travel"
- e.emp_NOM1 - nom de l'employé de la table "employee"
- e.emp_PRENOM - prénom de l'employé de la table "employee"
- f.fl_BENNOM - nom de l'employé de la table "fly"
- f.fl_BENPRE - prénom de l'employé de la table "fly"
Le souci, la requête tourne pendant longtemps (1h45) et je suis obligé de l'annuler car on note des ralentissements dans les applications.
Comment puis-je améliorer ma requête pour réduire la durée d’exécution et rapatrier les infos.
Merci d'avance.
Cordialement.
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
24
25
26
27 SELECT (e.employee_PK_ID),(t.travel_PK_ID),(f.fly_PK_ID), e.emp_NOM1, e.emp_PRENOM, e.emp_NOM2, e.emp_IDENT, e.emp_DATENAI, e.emp_SEXE, f.fl_ASSNUM, f.fl_CPAM, f.fl_CPAMCLE, t.tr_NUM, t.tr_RECODE, t.tr_PGSCODE, e.emp_DATENT, t.tr_DDEB, t.tr_DFIN, t.tr_DEJFAC, t.tr_PRESENT, e.emp_CODECES, t.tr_DATCRE, t.tr_VALID FROM employee e, travel t, fly f WHERE e.emp_NUMDOS = t.tr_MANUMDOS AND t.tr_RECODE = 'HEPH' AND e.emp_NOM1 = f.fl_BENNOM AND e.emp_PRENOM = f.fl_BENPRE ORDER BY e.emp_NOM1;
Partager