The decision to use 2020-01-01 as date for some of the time with time
zone conversion leads to, in my opinion, confusing behaviour:
select
time'13:25:32.1235 Europe/Amsterdam' at time zone 'utc' as t1,
cast(time'13:25:32.1235 Europe/Amsterdam' as timestamp with time
zone) at time zone 'utc' as t2,
cast(cast(time'13:25:32.1235 Europe/Amsterdam' as timestamp with time
zone) as time with time zone) at time zone 'utc' as t3,
cast(cast(time'13:25:32.1235 Europe/Amsterdam' as timestamp with time
zone) at time zone 'utc' as time with time zone) as t4
from rdb$database;
yields:
T1 12:25:32.1235 UTC
T2 2020-05-15 11:25:32.1235 UTC
T3 12:25:32.1235 UTC
T4 11:25:32.1235 UTC
The previous behaviour where the current date was used (in line with the
SQL-standard requirements for using the current date when casting from
TIME WITH TIME ZONE to TIME WITH TIMESTAMP) would make all these
consistent (at 11:25:32.1235 UTC).
Mark
--
Mark Rotteveel
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel