我想在Oracle中将'2015-10-01T12:00:00.000-03:00'varchar转换为日期,如下所示:
select
to_date('2010-12-14:09:56:53', 'YYYY-MM-DD:HH24:MI:SS') -
to_date('2010-12-14:09:56:46', 'YYYY-MM-DD:HH24:MI:SS')
from dual;
但是对于那种格式。
如果问题不清楚,请告诉我为什么,我会提供更多信息,不要否定我,我是菜鸟:)。 Obs:我使用的是Oracle Database 11g企业版
答案 0 :(得分:4)
使用TO_TIMESTAMP_TZ
,如果您想将其转换为日期,则可以将其转换为一个时区(通常为UTC
),然后CAST
将其转换为日期:
SELECT CAST(
TO_TIMESTAMP_TZ(
'2015-10-01T12:00:00.000-03:00',
'YYYY-MM-DD"T"HH24:MI:SS.FF3TZR'
)
AT TIME ZONE 'UTC'
AS DATE
)
FROM DUAL;
答案 1 :(得分:-1)
试试这个:
select to_timestamp('2015-10-01T12:00:00.000-03:00', 'YYYY-MM-DD"T"HH24:MI:SS.ff3"Z"')
from dual;