【发布时间】:2016-01-21 22:17:22
【问题描述】:
在转换 Oracle 日期方面需要您的帮助。
我有一列存储像这样的日期20150731 00:00:34.220。但是,我想显示像 20150731 这样的列,但是当我运行一个简单的 select 语句来测试输出时,我收到以下错误。
select TO_DATE('20150731 00:00:34.550','YYYYMMDD')
from dual
错误
ORA-01830: 日期格式图片在转换整个输入字符串之前结束
【问题讨论】:
-
大家好 - 列的数据类型是 VARCHAR2。
-
"that stores dates like this ..." 如果它确实存储这样的数据,它不是日期列,但您可能会将日期的默认显示混淆为是它们的存储方式 - 这是不正确的。 Oracle 中的实际日期存储为表示不同时间单位的整数集。该数字数据通过 db 默认值或通过 to_char() 的有意操作转换为人类可读的格式。如果数据存储为 varchar,请明确说明。
-
那么你只需要 substr(that_column_here, 1, 8) 除非我错过了什么
-
非常感谢大家的帮助。真的很感激。
标签: oracle