[DB2] Temps de calcul via une vue trop long
Bonjour,
Je souhaite faire une multiplication entre un champ d’une table A et une vue.
J’ai une table dans laquelle je stocke mon code client, le code variété (de mon produit), le code jour, le volume et le CAN.
De l’autre côté, j’ai une vue qui calcule, pour chaque mois et chaque variété le coefficient pour obtenir le coefCAN.
Je souhaite donc intégrer, dans ma colonne CAN de ma table, le calcul volume * coefCAN.
Voici la requête que j’ai faite. Le pb c’est que j’ai 8 millions lignes ds ma table et que c’est très long (ma requête à tourner 2h sans résultat… :s)
Code:
1 2 3 4 5
| update d_f_gpa a
set can_sor_gpa_eu = (select (a.VOL_QTE_SOR_GPA_UC * b.CAN_UC_EU) as CAN_SOR_GPA_EU
from V_GPA_VOL_VAR_MOI_HISTO b
where a.cod_var = b.cod_var
and integer(substr(char(a.cod_jou),1,6)) = b.cod_moi) |
Je voulais donc savoir si il n’y avait pas un autre moyen de faire.
J’espère que j’ai été assez claire….
Merci d’avance pour votre aide !