BUG #2661: select time with time zone not converting

Started by Harry Hehlover 19 years ago3 messagesbugs
Jump to latest
#1Harry Hehl
Harry.Hehl@diskstream.com

The following bug has been logged online:

Bug reference: 2661
Logged by: Harry Hehl
Email address: harry.hehl@diskstream.com
PostgreSQL version: 8.1.3
Operating system: Linux
Description: select time with time zone not converting
Details:

The "select timestamp with time zone" is working as expected converting the
timestamp to the local time zone.

"select time with time zone" returns the same timezone.

Example:

CREATE TABLE test
(
mytime TIME (6) WITH TIME ZONE,
mytimestamp TIMESTAMP (6) WITH TIME ZONE
);

SET time zone -5;

INSERT INTO test VALUES ('00:00:00', '2006-02-01 00:00:00');

select * from test where mytimestamp = timestamp with time zone '2006-02-01
05:00:00-00';

-- returns inserted row.

select * from test where mytime = time with time zone '05:00:00-00';

-- nothing returned.

select timestamp with time zone '2006-02-01 05:00:00-00';

-- timestamptz
------------------------
-- 2006-02-01 00:00:00-05
--(1 row)

select time with time zone '05:00:00-00';
-- timetz
-------------
-- 05:00:00+00 This should be '00:00:00-05'
--(1 row)

#2Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Harry Hehl (#1)
Re: BUG #2661: select time with time zone not converting

On Sep 28, 2006, at 3:54 PM, Harry Hehl wrote:

Bug reference: 2661
Logged by: Harry Hehl
Email address: harry.hehl@diskstream.com
PostgreSQL version: 8.1.3
Operating system: Linux
Description: select time with time zone not converting
Details:

The "select timestamp with time zone" is working as expected
converting the
timestamp to the local time zone.

"select time with time zone" returns the same timezone.

Example:

CREATE TABLE test
(
mytime TIME (6) WITH TIME ZONE,
mytimestamp TIMESTAMP (6) WITH TIME ZONE
);

SET time zone -5;

INSERT INTO test VALUES ('00:00:00', '2006-02-01 00:00:00');

select * from test where mytimestamp = timestamp with time zone
'2006-02-01
05:00:00-00';

-- returns inserted row.

select * from test where mytime = time with time zone '05:00:00-00';

-- nothing returned.

select timestamp with time zone '2006-02-01 05:00:00-00';

-- timestamptz
------------------------
-- 2006-02-01 00:00:00-05
--(1 row)

select time with time zone '05:00:00-00';
-- timetz
-------------
-- 05:00:00+00 This should be '00:00:00-05'
--(1 row)

Confirmed in 8.1.4 and HEAD, though I'm not sure what date it's from
since I'm on a plane right now (is there any way to get that info out
of the local repository?)
--
Jim Nasby jimn@enterprisedb.com
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)

#3Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Jim Nasby (#2)
Re: BUG #2661: select time with time zone not converting

On Thu, Oct 05, 2006 at 09:04:50PM -0500, Jim Nasby wrote:

On Sep 28, 2006, at 3:54 PM, Harry Hehl wrote:

Bug reference: 2661
Logged by: Harry Hehl
Email address: harry.hehl@diskstream.com
PostgreSQL version: 8.1.3
Operating system: Linux
Description: select time with time zone not converting
Details:

The "select timestamp with time zone" is working as expected
converting the
timestamp to the local time zone.

"select time with time zone" returns the same timezone.

Example:

CREATE TABLE test
(
mytime TIME (6) WITH TIME ZONE,
mytimestamp TIMESTAMP (6) WITH TIME ZONE
);

SET time zone -5;

INSERT INTO test VALUES ('00:00:00', '2006-02-01 00:00:00');

select * from test where mytimestamp = timestamp with time zone
'2006-02-01
05:00:00-00';

-- returns inserted row.

select * from test where mytime = time with time zone '05:00:00-00';

-- nothing returned.

select timestamp with time zone '2006-02-01 05:00:00-00';

-- timestamptz
------------------------
-- 2006-02-01 00:00:00-05
--(1 row)

select time with time zone '05:00:00-00';
-- timetz
-------------
-- 05:00:00+00 This should be '00:00:00-05'
--(1 row)

Actually, this is expected behavior. Unlike timestamptz, timetz actually
stores the original timezone info.
--
Jim Nasby jim@nasby.net
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)