2

在下面,为什么 to_char() 中不包含夏令时?我怎样才能得到夏令时的时间?

SELECT systimestamp AT TIME ZONE 'Australia/Adelaide' from dual;
SELECT TO_CHAR(systimestamp AT TIME ZONE 'Australia/Adelaide' ,'yyyy-MM-dd HH:MI:SS AM') from dual;

returns

16-OCT-13 07.19.01.165681000 PM AUSTRALIA/ADELAIDE
2013-10-16 06:19:01 PM
4

2 回答 2

2
select to_char( systimestamp at time zone 'AUSTRALIA/ADELAIDE', 
'HH24:MI:SS TZR TZD' ) from dual

http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements004.htm#i34510

于 2013-10-16T10:03:18.753 回答
1

问题是因为 oracle 服务器中的时区文件过时。阿德莱德时区在 2008 年或 2007 年左右更新。一旦时区文件更新,问题就得到了解决。

于 2013-11-18T09:14:39.340 回答