首页 > 解决方案 > 如何从带有周围字符的 oracle varchar 获取日期时间

问题描述

我有一个 varchar2 'Printed 4/21/2014 3:00:00 AM' 并且只想获得 '4/21/2014 3:00:00 AM' 作为日期。我的想法是使用类似的东西:

我有: REGEXP_SUBSTR('Printed 4/21/2014 3:00:00 AM', '[0-9/ :APM]*$') 结果:4/21/2014 3:00:00 AM

然而,

SELECT to_date(REGEXP_SUBSTR('Printed 4/21/2014 3:00:00 AM', '[0-9/ :APM]*$'), 'YYYY-MM-DD HH24:MI:SS') FROM DUAL;

导致“无效月份”错误。

建议?

标签: regexoracle

解决方案


问题:由 mathguy 正确识别 - 日期格式

我决定我真的不需要时间戳,因此:

SELECT to_date(REGEXP_SUBSTR('Printed 4/21/2014', '[0-9/]*$'), 'MM/DD/YYYY') FROM DUAL;

工作正常。


推荐阅读