Re: Fun avec les TZ

Cédric Villemain <[email protected]> Mon, 30 Oct 2017 19:16:54 +0100
Newsgroups gmane.comp.db.postgresql.french
Message-ID <CADKA0TK2+vRueGx5aA4hDvpZ-Jx5buDd2hkmgyisZoD4r7SYSw@mail.gmail.com>
Le 22 octobre 2017 à 12:11, Bruno Friedmann <[email protected]> a écrit :

> Merci Daniel et Yves.
>
>
>
> Ce que je constate, c'est que dans tous les cas la sonde n'écrit pas une
> date correcte, du coup sed ou rewritte de la donnée brute.
>

juste pour compléter l'excellente réponse de Daniel (je ne vois pas trop
l'intérêt d'un sed/rewrite, voir conversion possible vers timestamp
ci-dessous si vraiment cela semble nécessaire):

select
'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamptz at time zone
'America/Miquelon',
'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamptz at time zone 'PMDT',
'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamptz at time zone 'UTC +2',
'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamp,
'Sat Oct 21 15:01:06 +02:00 2017'::timestamptz;
-[ RECORD 1 ]-----------------------
timezone    | 2017-10-21 15:01:06
timezone    | 2017-10-21 15:01:06
timezone    | 2017-10-21 15:01:06
timestamp   | 2017-10-21 15:01:06
timestamptz | 2017-10-21 15:01:06+02


# set timezone TO 'America/Miquelon';
# select 'Sat Oct 21 15:01:06 GMT+02:00 2017'::timestamptz;
-[ RECORD 1 ]-----------------------
timestamptz | 2017-10-21 15:01:06-02

Il faut bien distinguer la date d'affichage, la date de stockage et la date
en entrée.
Est-ce vraiment la sonde qui est incorrecte ?


>
> Soit en +02:00 seul (suppression de GMT) soit GMT-02:00
>
> Le second me plaît mieux dans le sens iso-8601 simplifiant la documentation
>
> des normes utilisées.
>
>
>
> Bon dimanche.
>
>
>
> --
>
>
>
> Bruno Friedmann
>
> Ioda-Net Sàrl www.ioda-net.ch
>
> Bareos Partner, openSUSE Member, fsfe fellowship
>
> GPG KEY : D5C9B751C4653227
>
> irc: tigerfoot
>
>
>
>
>



-- 

-- 
Cédric Villemain +33 (0)6 20 30 22 52http://2ndQuadrant.fr/
PostgreSQL: Support 24x7 - Développement, Expertise et Formation