Timestamps and Time Zones in PostgreSQL (2016)

Timestamps and Time Zones in PostgreSQL (2016)

Specifically, the PostgreSQL documentation on time zones says:

The PostgreSQL source confirms this that is stored as a primitive value, seemingly indistinguishable from :

With a better understanding of time zones, I realized that there is actually no point in storing a timestamp’s time zone. That’s exactly what PostgreSQL does:

This explains why in the example before the was rendered not in , but in the time zone set by the configuration:

You might be asking yourself, what is the point of having an additional timestamp type if it is stored the same way? I like to think of them as follows:

Thanks to the two distinct timestamp types, one denoting absolute and the other wall time, we don’t have to specify from which to which time zone we want to convert, as is the case e.g. in MySQL’s :

A day doesn’t always have 24 hours.

Source: phili.pe