2

datetime运行select语句时如何将以下格式的日期字符串转换为?

2015-06-04T02:58:00.134+08:00

它存储在具有数据类型VARCHAR2(100 BYTE) 的列中。

谢谢!

4

1 回答 1

3

它存储在数据类型为 VARCHAR2(100 BYTE) 的列中。

首先,您永远不应该将DATE/TIMSTAMP存储为string。这是一个数据库设计缺陷。

无论如何,您可以将其转换为TIMESTAMP WITH TIMEZONE

例如,

SQL> SELECT to_timestamp_tz('2015-06-04T02:58:00.134+08:00',
  2                         'YYYY-MM-DD"T"HH24:MI:SS.FF TZH:TZM')
  3                         AT TIME ZONE '+8:00' as tm_stamp
  4  FROM dual;

TM_STAMP
-----------------------------------------------------------------
04-JUN-15 02.58.00.134000000 AM +08:00

SQL>
于 2015-06-04T10:16:23.267 回答