【发布时间】:2011-08-05 05:11:45
【问题描述】:
如何将 Stackoverflow 数据转储中的时间戳 ('2008-08-03T18:06:30.913') 转换为 Oracle 时间戳格式?应该包含什么来代替下面函数中的问号?
TO_TIMESTAMP('2008-08-03T18:06:30.913','YYYY-MM-DD??HH24:MI:SS.FFF')
【问题讨论】:
如何将 Stackoverflow 数据转储中的时间戳 ('2008-08-03T18:06:30.913') 转换为 Oracle 时间戳格式?应该包含什么来代替下面函数中的问号?
TO_TIMESTAMP('2008-08-03T18:06:30.913','YYYY-MM-DD??HH24:MI:SS.FFF')
【问题讨论】:
我相信这应该可行
TO_TIMESTAMP('2008-08-03T18:06:30.913','yyyy-mm-dd"T"hh24:mi:ss"Z"')
这与ISO 8601 format一致,T表示时间部分的开始。
(现在无法运行检查)希望这会有所帮助
【讨论】:
SQL> select to_timestamp('2008-08-03T18:06:30.913','yyyy-mm-dd"T"hh24:mi:ss.ff3')
2 from dual
3 /
TO_TIMESTAMP('2008-08-03T18:06:30.913','YYYY-MM-DD"T"HH24:MI:SS.FF3')
---------------------------------------------------------------------------
03-AUG-08 06.06.30.913000000 PM
1 row selected.
【讨论】:
好吧,您可以将 T 替换为空格。我认为字符串中的“T”没有任何特定含义。看起来它用作日期和时间之间的分隔符。可以使用oracle的replace功能去掉“T”
【讨论】: