OVH Cloud OVH Cloud

postgres : convertir date GMT en localtime

14 réponses
Avatar
Alain Montfranc
Bonjour

J'ai une table avec des données enregistrées au format GMT. Est il
possible de les convertir en SQL au format heure locale (Paris en
tenant compte du DST) ?

Pour le moment je fait ca avec la commande date mais c'est long et
crad...

merci

4 réponses

1 2
Avatar
Alain Montfranc
Dans son message précédent, SQLpro a écrit :
Le 14/05/2011 12:37, Alain Montfranc a écrit :
Bonjour

J'ai une table avec des données enregistrées au format GMT. Est il
possible de les convertir en SQL au format heure locale (Paris en tenant
compte du DST) ?a stamp timezone,

Pour le moment je fait ca avec la commande date mais c'est long et crad...

merci




Poste le DDL de ta table STP.

A +



create table stamps (stamp timestamp);

insert into stamps values
(
timestamp '1970-01-01 00:00:00+00' + 1305564501 * interval '1
second'
);


insert into stamps values
(
timestamp '1970-01-01 00:00:00+00' + 1292155920 * interval '1
second'
);

select stamp from stamps;

stamp
---------------------
2011-05-16 16:48:21
2010-12-12 12:12:00
(2 rows)

je suis OK avec ces heures GMT

Je voudrais afficher

stamp
---------------------
2011-05-16 18:48:21
2010-12-12 13:12:00
(2 rows)

select stamp at timezone 'Europe/paris' from stamps;

donne :

trackme2=# select stamp at time zone 'Europe/paris' from stamps;
timezone
------------------------
2011-05-16 16:48:21+02
2010-12-12 12:12:00+01
(2 rows)

Ce qui ne correspond pas au but recherché...
Avatar
Alain Montfranc
SQLpro a présenté l'énoncé suivant :
Le 14/05/2011 12:37, Alain Montfranc a écrit :
Bonjour

J'ai une table avec des données enregistrées au format GMT. Est il
possible de les convertir en SQL au format heure locale (Paris en tenant
compte du DST) ?

Pour le moment je fait ca avec la commande date mais c'est long et crad...

merci




Et si tu veut éviter les troll de certains, poste sur developpez.com forum
PostGreSQL SQL :
http://www.developpez.net/forums/f1167/bases-donnees/postgresql/debuter/
ou sur celui de la communauté PG :
http://forums.postgresql.fr/viewforum.php?id=6

A +



Quand j'était gamin, un chier très (très, mais vraiment très très) con
s'égosillait à s'en arracher les cordes vocales à chaques fois que je
passais. En fait c'était drole.

Avec hailiausse j'ai l'impression de retomber en enfance, c'est cool
:-D
Avatar
SQLpro
J'ai pas trop le temps là je prend un TGV,
mais a priori tu dois modifier la variable d'environnement de connexion
: timezone (string)

Dans PGAdmin III, clic droit sur la base, va dans propriété de la base,
onglet variable et modifie la variable timezone.

A +


Le 16/05/2011 18:56, Alain Montfranc a écrit :
Dans son message précédent, SQLpro a écrit :
Le 14/05/2011 12:37, Alain Montfranc a écrit :
Bonjour

J'ai une table avec des données enregistrées au format GMT. Est il
possible de les convertir en SQL au format heure locale (Paris en tenant
compte du DST) ?a stamp timezone,

Pour le moment je fait ca avec la commande date mais c'est long et
crad...

merci




Poste le DDL de ta table STP.

A +



create table stamps (stamp timestamp);

insert into stamps values
(
timestamp '1970-01-01 00:00:00+00' + 1305564501 * interval '1 second'
);


insert into stamps values
(
timestamp '1970-01-01 00:00:00+00' + 1292155920 * interval '1 second'
);

select stamp from stamps;

stamp
---------------------
2011-05-16 16:48:21
2010-12-12 12:12:00
(2 rows)

je suis OK avec ces heures GMT

Je voudrais afficher

stamp
---------------------
2011-05-16 18:48:21
2010-12-12 13:12:00
(2 rows)

select stamp at timezone 'Europe/paris' from stamps;

donne :

trackme2=# select stamp at time zone 'Europe/paris' from stamps;
timezone
------------------------
2011-05-16 16:48:21+02
2010-12-12 12:12:00+01
(2 rows)

Ce qui ne correspond pas au but recherché...






--
Frédéric BROUARD - expert SGBDR et SQL - MVP SQL Server - 06 11 86 40 66
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Enseignant Arts & Métiers PACA, ISEN Toulon et CESI/EXIA Aix en Provence
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
Avatar
Alain Montfranc
SQLpro a présenté l'énoncé suivant :
J'ai pas trop le temps là je prend un TGV,




Attention ca peut faire mal ;-)

mais a priori tu dois modifier la variable d'environnement de connexion
: timezone (string)

Dans PGAdmin III, clic droit sur la base, va dans propriété de la base,
onglet variable et modifie la variable timezone.




A priori ca ne change rien
1 2