Bonjour,

J'ai besoin de "trainer" une valeur dans une table, et je ne sais pas comment m'y prendre.

Supposons que j'ai une table avec l'évolution des prix de mon produit. A chaque fois que le prix change, je rajoute une nouvelle entrée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
EVOL_PRIX
date
valeur
La table contient les valeurs suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
1/1/2009;10
3/1/2009;11
5/1/2009;11,5
6/1/2009;11
...
Je souhaite faire un graphique d'évolution de prix au jour le jour.
En croisant avec un calendrier, j'obtiens la table suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
1/1/2009;10
2/1/2009;NULL
3/1/2009;11
4/1/2009;NULL
5/1/2009;11,5
6/1/2009;11
7/1/2009;NULL
8/1/2009;NULL
10/1/2009;NULL
...

Si je me base là dessus pour faire mon graphique, j'aurai des valeurs nulles, ce qui n'est pas vraiment vrai.

Je voudrais donc "trainer" mes valeurs pour que quand une valeur est NULL, je prends la dernière valeur connue.

Je voudrais obtenir le résultat suivant :
1/1/2009;10
2/1/2009;10
3/1/2009;11
4/1/2009;11
5/1/2009;11,5
6/1/2009;11
7/1/2009;11
8/1/2009;11
10/1/2009;11
...

Existe-t-il méthode qui permet de faire ça avec Oracle ? (SQL ou PL/SQL)

Sinon, comment vous y prendriez-vous ?


Merci d'avance,

PhunkyBob