【发布时间】:2017-03-21 10:48:21
【问题描述】:
我在列中有时间戳值,例如 30/05/06 11:40:34.000000000 AM。我需要从这个值中提取年份(即 2006)和月份(即 05)。下面是我的 SQL。
SELECT EXTRACT(YEAR FROM TO_DATE('19/10/09 10:45:44.000000000 AM')) FROM DUAL;
在 SQL 上面运行后,我得到一个错误APPROVED_PROPOSALS。
所以,我尝试提供如下格式,
SELECT EXTRACT(YEAR FROM TO_DATE('19/10/09 10:45:44.000000000 AM','HH12:MI:SS.FF')) FROM DUAL;
但是,仍然出现一些错误。我很确定,我提供的格式不正确。
ORA-01821: date format not recognized
请帮助我,以获取此类值的年份和月份。
基兰。
【问题讨论】:
-
为什么在查询中使用字符串,而不是直接从时间戳数据类型的列中提取?
标签: oracle plsql timestamp to-date