Bonjour,
je travaille sur une base SQL Server 2008.
j'ai une tableA ayant la structure suivante :
ID ---- Année---- Valeur ---- ValeurTotat
1 ---- 2004 ------ 10
1 ---- 2004 ------ 20
2 ---- 2005 ------ 30
2 ---- 2005 ------ 40
le champ "ValeurTotat" (somme du champ "valeur" par Année et ID) est vide dans un premier temps, pour le renseigner j'effectue un Update sur la tableA.
Update TableA
Set ValeurTotat = (Select sum(TA.valeur)
From TableA TA
Where TA.ID = TableA.ID
AND TA.Année = TableA.Année
AND TA.Année = 2004)
ce qui va donner :
ID ---- Année---- Valeur ---- ValeurTotat
1 ---- 2004 ------ 10 ------ 30
1 ---- 2004 ------ 20 ------ 30
2 ---- 2005 ------ 30
2 ---- 2005 ------ 40
pour question de volumétrie de la BD, je fais le Update année par année.
le Update s'effectue correctement pour le 2004; mais quand je vais exécuter le même Update pour 2005, la mise à jour sera bien faite sauf que la ValeurTotal de l'année 2004 que j'ai effectué au début aura Null comme valeur.
ID ---- Année---- Valeur ---- ValeurTotat
1 ---- 2004 ------ 10 ------ Null
1 ---- 2004 ------ 20 ------ Null
2 ---- 2005 ------ 30 ------ 70
2 ---- 2005 ------ 40 ------ 70
j comprend pas le pkoi?
Merci d'avance
Partager