|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 9 ![]() |
Bonjour,
Je désire remplir une table date (date) de toutes les dates de 2003 à aujourd'hui (du calendrier).. Insert into Date (date) SELECT... Je sais que en sql sous oracle pour généré 99 jours successifs : INSERT INTO laTable (laDate) SELECT TRUNC(DateDepart + ROWNUM) FROM DUAL CONNECT BY ROWNUM < 100 Cependant "CONNECT BY ROWNUM" ne marche pas sous pgsql.. ou alors faudrait faire du pl/pgsql mais je ne sais pas faire. Donc si quelqu'un peut m'aider et me trouver une solution à mon problème, il sera le bienvenue. Merci, Cordialement, Michto |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé
![]() Inscription : septembre 2006 Messages : 2 291 ![]() |
Citation:
PostgreSQL supporte la syntaxe : date 'DATE' + integer 'INT' http://www.postgresql.org/docs/8.0/i...-datetime.html |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 9 ![]() |
Ok, on est d'accord.. mais ça m'avance pas trop pour remplir complètement une table de dates d'un calendrider. Je te remercie quand même pour ton aide.
Cordialement, Michto |
|
|
00
|
|
|
#4 | |
|
Expert Confirmé
![]() Inscription : septembre 2006 Messages : 2 291 ![]() |
Citation:
$BODY$DECLARE date_from alias for $1 ; date_to alias for $2 ; from_date date ; BEGIN from_date := date_from ; WHILE (from_date <= date_to) LOOP RETURN NEXT from_date ; from_date := from_date + 1 ; END LOOP ; RETURN ; END; $BODY$ LANGUAGE 'plpgsql' > select * from dates(date '2006-01-01',date '2006-01-10') ; dates ------------ 2006-01-01 2006-01-02 2006-01-03 2006-01-04 2006-01-05 2006-01-06 2006-01-07 2006-01-08 2006-01-09 2006-01-10 (10 rows) > insert into mytable(mydate) select * from dates('2003-01-01', current_date) ; |
|
|
|
00
|
|
|
#5 | ||
|
Invité(e)
Messages : n/a ![]() |
tu peux créer une fonction comme suit aussi:
Code :
|
||
00
|
|
|
#6 |
|
Invité(e)
Messages : n/a ![]() |
après pour lancer la fonction tu tape:
|
00
|
Copyright © 2000-2012 - www.developpez.com