Bonjour,
je poste ici en lieu et place de mon DBA, suis pas un pro.
Nous avons une reqûete, qui fait partie d'un body d'un package.
Voici la requete :
Sous SQLPLUS, lorsque l'on exécute cette requete tandis que la table de travail T_WW_TRC_ASSORT_UL_WAU (table temporaire) est populée avec 2900 enr, ca dure 3s.
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 UPDATE T_WW_TRC_ASSORT_UL_WAU WAU SET WAU.WAU_IND_TRT = 1 WHERE NOT EXISTS (SELECT 1 FROM T_FG_TRC_ASSORT_CDE_TAC TAC,T_WW_TRC_ASSORT_UL_WAU WAU WHERE TAC.TAC_COD_MAGASIN = 1625 WAU.WAU_COD_MAGASIN AND TAC.TAC_COD_FOUR = WAU.WAU_COD_FOUR AND TAC.TAC_COD_FILIERE = WAU.WAU_COD_FILIERE AND TAC.TAC_COD_RACINE = WAU.WAU_COD_RACINE AND TAC.TAC_COD_VL = WAU.WAU_COD_VL AND TAC.TAC_COD_UL = WAU.WAU_COD_UL AND TAC.TAC_COD_CONTRAT_COM = WAU.WAU_COD_CONTRAT_COM AND TAC.TAC_COD_VA = WAU.WAU_COD_VA AND WAU.WAU_STA_COMMANDABLE = TAC.TAC_STA_COMMANDABLE AND WAU.WAU_COD_RESEAU = TAC.TAC_COD_RESEAU AND TAC.TAC_DAT_DEBUT = WAU.WAU_DAT_DEBUT ) AND WAU.WAU_IND_TRT = 0 AND WAU.WAU_COD_MAGASIN = 1625;
Lorsque l'on lance EXACTEMENT cette même requête, mais entre une commandesans ajout de code supplémentaire, ca dure 6mns.
Code : Sélectionner tout - Visualiser dans une fenêtre à part BEGIN la requete END
Une explication ?
Partager