From: | "Daniel Verite" <daniel(at)manitou-mail(dot)org> |
---|---|
To: | "Bruno Friedmann" <bruno(at)ioda-net(dot)ch> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Fun avec les TZ |
Date: | 2017-10-22 07:27:53 |
Message-ID: | 9e09df2e-1e41-4299-8e7d-750da68896e5@manitou-mail.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Bruno Friedmann wrote:
> 'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamptz,
> 'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamp,
> 'Sat Oct 21 15:01:06 +02:00 2017'::timestamptz;
>
> 2017-10-21 19:01:06+02
> 2017-10-21 15:01:06
> 2017-10-21 15:01:06+02
>
> On voit bien que l'interprétation de GMT+2 donne un résultat
> abhérant de 19h00 pour un 15h00 CEST (c'est genre +2+2).
En fait le résultat est juste parce que pour la norme POSIX,
GMT+02:00 c'est 2 heures à l'ouest du méridien de Greenwich,
au contraire de l'expression de la 3eme colonne qui fait référence
à la norme ISO-8601, orientée dans l'autre sens (2 heures à l'est
de Greenwich), celui qui est utilisé le plus souvent.
Quand on est 2h à l'est de GMT, par exemple l'heure d'été française,
on est bien décalé de 4h par rapport à un fuseau qui serait 2h à
l'ouest de GMT.
Cf la doc:
https://doc.postgresql.fr/10/datatype-datetime.html
" Un autre problème à conserver en tête est que, pour les noms des
fuseaux horaires POSIX, les décalages positifs sont utilisés pour
les emplacements situés à l'ouest de Greenwich. Partout ailleurs,
PostgreSQL™ suit la convention ISO-8601 pour qui les décalages
positifs de fuseaux horaires concernent l'est de Greenwich"
La même confusion existe en-dehors de Postgres,
par exemple sur un système Ubuntu, avec la commande date
du système et une conf locale sur Europe/Paris:
$ date
dimanche 22 octobre 2017, 09:23:06 (UTC+0200)
$ TZ=GMT+2 date
dimanche 22 octobre 2017, 05:23:06 (UTC-0200)
parce que TZ suit POSIX alors que l'affichage par défaut
de la date suit l'autre convention.
--
Daniel Vérité
PostgreSQL-powered mailer: http://www.manitou-mail.org
Twitter: @DanielVerite
--
Envoi via la liste pgsql-fr-generale (pgsql-fr-generale(at)postgresql(dot)org)
From | Date | Subject | |
---|---|---|---|
Next Message | Bruno Friedmann | 2017-10-22 10:11:33 | Re: Fun avec les TZ |
Previous Message | Yves Dorfsman | 2017-10-21 20:06:06 | Re: Fun avec les TZ |