timetz stores only the time units within a day, it uses an extra field
to store the zone info.

typedef int64 TimeADT;
typedef struct
{
    TimeADT time; /* all time units other than months and years */
    int32 zone; /* numeric time zone, in seconds */
} TimeTzADT;

timestamp is a count that starts on January 1st, 1970 at UTC.

You can convert a timestamp to any timezone, but not timetz.

On Mon, Jun 19, 2023 at 11:53 AM jian he <jian.universal...@gmail.com> wrote:
>
>
> Hi,
> https://www.postgresql.org/docs/current/datatype-datetime.html
> timetz, timestamptz:
> same resolution.
> fractional digits in the seconds field are also the same.
> >
> > All timezone-aware dates and times are stored internally in UTC. They are 
> > converted to local time in the zone specified by the TimeZone configuration 
> > parameter before being displayed to the client.
>
> Why does timetz need more bytes (8 vs 12) than timestamptz?



-- 
Regards
Junwang Zhao


Reply via email to