I am currently using: sample_start_time AT TIME ZONE 'UTC' AT TIME ZONE 'Eastern Standard Time' AS sample_start_time_est from: Convert Datetime column from UTC to local time in select statement
Enter any time in Etc/UTC and find the corresponding asia/kabul time using this Time Calculator. Etc/UTC is a UTC +00:00 timezone offset where as Eastern Standard Time (EST) is a UTC -5:0 timezone ...
UTC, which stands for Coordinated Universal Time in English, is defined by atomic clocks, but is otherwise the same. In UTC a second always has the same length. Leap seconds are inserted in UTC to keep UTC and GMT from drifting apart. By contrast, in GMT the seconds are stretched as necessary, so in principle they don’t always have the same ...
Does time.time() in the Python time module return the system's time or the time in UTC?
datetime.now(timezone.utc) datetime.now(timezone.utc).timestamp() * 1000 # POSIX timestamp in milliseconds For your purposes when you need to calculate an amount of time spent between two dates all that you need is to subtract end and start dates. The results of such subtraction is a timedelta object. From the python docs:
datetime - How to get UTC time in Python? - Stack Overflow
I feel neccessary to add comment about "why" exactly this behaviour was implemented the way it was - it's because Postgresql doesn't actually store timezone even in "timestamp with timezone" type - it just assumes that input time is in UTC. So it's really easy to "shoot off your leg" in this one, especially when you use something like DateTime.Now More on that here - stackoverflow.com ...