Re: Timestamp with vs without time zone. - Mailing list pgsql-general

From Michael Lewis
Subject Re: Timestamp with vs without time zone.
Date
Msg-id CAHOFxGpHM8Ka+S2eTSMSR=TRA5DsQ95C+H7Ezrs5d_1UjD6HXQ@mail.gmail.com
Whole thread Raw
In response to Re: Timestamp with vs without time zone.  (cen <cen.is.imba@gmail.com>)
Responses Re: Timestamp with vs without time zone.
List pgsql-general
Related to this current discussion and exchange of ideas... is there a best practice for retrieving data in such a way as the rows are localized to a timezone for where/group by purposes. That is, if I have a table which has events, but those events belong to a tenant or some entity that has a location which implies a timezone (or at least an offset), is there a best way to write a query similar to the below? Please forgive and overlook if there is some obvious syntax error, as this is just a quick and dirty example. Might it make sense to store a "localized" version of the timestamp *without* timezone on the event record such that an index can be used for fast retrieval and even grouping?

select
date_trunc( 'month', e.event_datetime AT TIMEZONE t.time_zone_name ) AS event_date,
count( e.id )
from events AS e
join tenants AS t ON t.id = e.tenant_id
where e.event_datetime AT TIMEZONE t.time_zone_name >= '01/01/2021'::DATE AND e.event_datetime AT TIMEZONE t.time_zone_name < '09/01/2021'::DATE;

pgsql-general by date:

Previous
From: cen
Date:
Subject: Re: Timestamp with vs without time zone.
Next
From: Tom Lane
Date:
Subject: Re: Timestamp with vs without time zone.