如何在Oracle中通过查询转换日期中的varchar数据类型

时间:2016-12-20 11:52:32

标签: oracle oracle11g

我在oracle的数据库中有一个表,其中字段TIMESTAMP_MAINVARCHAR2(255 CHAR) ..

TIMESTAMP_MAIN
2016-11-23T14:58:22

如何将列转换为给定格式的日期。我正在尝试以下查询:

SELECT TO_DATE(TIMESTAMP_MAIN, 'yyyy-MM-dd'T'HH:mm:ss') from ACCOUNT;

出现以下错误:

ORA-00907:缺少右括号 00907. 00000 - "错过右括号" *原因:
*行动: 行错误:1列:44

可能是错误的原因..
提前谢谢

1 个答案:

答案 0 :(得分:2)

您必须使用双引号处理T并将MM修复为MI几分钟:

SELECT TO_DATE(TIMESTAMP_MAIN, 'YYYY-MM-DD"T"HH24:MI:SS') from ACCOUNT;

我还将HH编辑为HH24,因为在您的示例中,您有24小时格式的写作时间