On Tue, 2021-09-21 at 18:00 +1200, Tim Uckun wrote: > I am hoping to get some clarification on timestamp with time zone. > > My understanding is that timestamp with time zone stores data in UTC > but displays it in your time zone. That is correct. When a timestamp is rendered as string, it it shown in the time zone specified by the current setting of the "timezone" parameter in your database session. > Does this also work on queries? If > I query between noon and 2:00 PM on some date in time zone XYZ does pg > translate the query to UTC before sending it to the server? Yes. > To provide context I have the following situation. > > I have a data file to import. All the dates in the time zone > pacific/auckland. My app reads the data , does some processing and > cleaning up and then saves it to the database. > > The language I am using creates the time data type with the right time > zone. The processing is being done on a server which is on UTC, the > database server is also on UTC. I am pretty sure the ORM isn't > appending "at time zone pacific/Auckland" to the data when it appends > it to the database. > > So does the database know the timestamp is in auckland time when the > client is connecting from a server on UTC? It does, but only if you set "timezone" appropriately in the database session. You could use ALTER ROLE to change the default setting for a database user, but it might be best to set that from the application. Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com