我的格式为'14 -SEP-11 12.33.48.537150 AM'的VARCHAR2值,我需要将其转换为TIMESTAMP。就像是,
SELECT TO_DATE('14-SEP-11 12.33.48.537150 AM', '<format_string>') FROM DUAL;
我想以TIMESTAMP数据格式从上述查询返回'14 -SEP-11 12.33.48.537150 AM'。
这个'format_string'应该是什么。
请帮忙,因为我尝试了很多东西但没有效果.. :(
我正在使用Oracle 11gR2。
感谢。
答案 0 :(得分:11)
DATE和TIMESTAMP是两种不同的数据类型。因此,您需要为每个使用正确的转换函数,在您的情况下为TO_TIMESTAMP()。
SELECT TO_TIMESTAMP('14-SEP-11 12.33.48.537150 AM', 'DD-MON-RR HH:MI:SS.FF AM')
FROM DUAL;
答案 1 :(得分:1)
select from_tz(to_timestamp('14-SEP-11 12.33.48.537150 PM', 'DD-Mon-RR HH.MI.SS.FF AM'), 'EUROPE/LONDON') from dual