Dan*_*ray 3 oracle date-format date
我正在尝试DATE
使用以下语句获取对象:
TO_DATE('1970-01-01 00:00:00 UTC','YYYY-MM-DD HH24:MI:SS TZR')
Run Code Online (Sandbox Code Playgroud)
和
TO_DATE('1970-01-01 00:00:00 UTC','YYYY-MM-DD TZH:TZM:SS TZR')
Run Code Online (Sandbox Code Playgroud)
但在这两种情况下,它都告诉我:ORA-01821: date format not recognized
.
我TZR
从https://www.techonthenet.com/oracle/functions/to_date.php得到了格式说明符,即:
TZD 夏令时信息。例如,“太平洋标准时间” TZH 时区小时。 TZM 时区分钟。 TZR 时区区域。
用时区指定日期/时间的正确方法是什么?
TZR - 时区区域信息。该值必须是数据库中支持的时区区域名称之一。在时间戳和间隔格式中有效,但在 DATE 格式中无效。
select to_timestamp_tz
(
'1970-01-01 00:00:00 UTC',
'YYYY-MM-DD HH24:MI:SS TZR'
)
as result
from dual;
RESULT
----------------------------------------
01-JAN-70 12.00.00.000000000 AM UTC
Run Code Online (Sandbox Code Playgroud)
如果你想要一个DATE
类型,你需要转换它:
select cast(to_timestamp_tz
(
'1970-01-01 00:00:00 UTC',
'YYYY-MM-DD HH24:MI:SS TZR'
) as date)
as result
from dual;
RESULT
----------------------------------------
01-JAN-70
Run Code Online (Sandbox Code Playgroud)