Re: [GENERAL] timestamp with timezone and time zone name
Shridhar Daithankar writes: > I am wondering, why following two values result in a shift by 3.5 hours. I > would expect them to be identical. > I understand that canonical time zone names could be ambiguous at times but I > think IST is not one of them. I don't know why you'd think that ... src/timezone/tznames/Asia.txt:IST 19800# Indian Standard Time src/timezone/tznames/Asia.txt:IST 7200# Israel Standard Time ... and there's some references to "Irish Summer Time" in the Olson database, as well. IIRC, IST was one of the primary problems that forced us to invent the "timezone_abbreviations" configuration mechanism. Try setting that to "India" if you want the 05:30 meaning. regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
Re: [GENERAL] timestamp with timezone and time zone name
On Tuesday 07 Aug 2012 12:21:04 AM Tom Lane wrote: > Shridhar Daithankar writes: > > I am wondering, why following two values result in a shift by 3.5 hours. I > > would expect them to be identical. > > > > I understand that canonical time zone names could be ambiguous at times > > but I think IST is not one of them. > > I don't know why you'd think that ... > > src/timezone/tznames/Asia.txt:IST 19800# Indian Standard Time > src/timezone/tznames/Asia.txt:IST 7200# Israel Standard Time My bad.. should have searched a bit more. > > ... and there's some references to "Irish Summer Time" in the Olson > database, as well. IIRC, IST was one of the primary problems that > forced us to invent the "timezone_abbreviations" configuration > mechanism. Try setting that to "India" if you want the 05:30 meaning. Thanks. I will stick to the numerical offsets for uniformity. -- Regards Shridhar
Re: [GENERAL] timestamp with timezone and time zone name
On 08/07/2012 08:36 PM, Shridhar Daithankar wrote: On Tuesday 07 Aug 2012 12:21:04 AM Tom Lane wrote: > Shridhar Daithankar writes: > > I am wondering, why following two values result in a shift by 3.5 hours. I > > would expect them to be identical. > > > > I understand that canonical time zone names could be ambiguous at times > > but I think IST is not one of them. > > I don't know why you'd think that ... > > src/timezone/tznames/Asia.txt:IST 19800 # Indian Standard Time > src/timezone/tznames/Asia.txt:IST 7200 # Israel Standard Time My bad.. should have searched a bit more. > > ... and there's some references to "Irish Summer Time" in the Olson > database, as well. IIRC, IST was one of the primary problems that > forced us to invent the "timezone_abbreviations" configuration > mechanism. Try setting that to "India" if you want the 05:30 meaning. Thanks. I will stick to the numerical offsets for uniformity. Date/time processing has lots of potential gotchas. Spend some quality-time with: http://www.postgresql.org/docs/current/static/datatype-datetime.html Note that short abbreviations and numerical offsets are simple offsets from UTC and will require you to change the offset as appropriate for each timestamp you want to enter. For example it is perfectly OK to enter midnight on new-year's day Eastern Daylight Time. PostgreSQL sees this as an offset of 4-hours from UTC which you could also specify as -04. Since January 1 is winter in New York, this may not be what you want. select '2012-01-01 EDT'::timestamptz at time zone 'UTC'; timezone - 2012-01-01 04:00:00 If you want PostgreSQL to account for DST rules (including how the rules have changed historically), use the timezone name: select '2012-01-01 America/New_York'::timestamptz at time zone 'UTC'; timezone - 2012-01-01 05:00:00 Cheers, Steve