Bonjour,
Je rédige un scripte PL/SQL permettant de boucler et de stocker des dates dans différentes tables. L'objectif est d'avoir tous les jours entre 2010 et 2030 sous la forme de date, et en numérique. C'est à dire que pour une date de type 05-09-2018, je veux stocker "05".
Voici un bout de code faux mais qui correspondrait +/- à ce que je souhaite. Ce n'est pas en PL :
En MySQL, c'est simple car il existe plein d'opérations réalisables sur les dates et de fonctions mais je ne trouve rien chez Oracle.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 DECLARE start_date DATE; end_date DATE; BEGIN start_date = TO_DATE('01 01 2010','dd mm yyyy'); end_date = TO_DATE('31 12 2030','dd mm yyyy'); WHILE start_date<end_date INSERT INTO dim_temps_jour(KEYTEMPS, JOURMOIS, JOURSEMAINE) -- (keytemps, jourmois, joursemaine) VALUES (KEYTEMPS, TO_NUMBER(TO_CHAR(start_date(DAY)) start_date = start_date+1; END; /
Désolé si la question parait bête pour certains, je débute dans les langages de bdd et je bloque vraiment sur celui-ci..
Partager