如何将 NUMBER 转换为 DATE 格式

Posted

技术标签:

【中文标题】如何将 NUMBER 转换为 DATE 格式【英文标题】:How to convert NUMBER into DATE format 【发布时间】:2014-05-10 08:23:33 【问题描述】:

我需要一些帮助。我正在尝试将 PIN(识别码)转换为日期格式。

示例:我有 PIN 8808067070 我想取前 6 个字符 880806 并将它们转换为日期格式,例如 06.08.1988 /DD.MM.YYYY/

有什么想法吗?

【问题讨论】:

也许是to_date?到目前为止你做了什么?为什么您可以假设 PIN 以始终代表日期的六位数字开头? 【参考方案1】:

使用 TO_CHAR 和适当的格式:

TO_DATE(SUBSTR('8808067070',1,6), 'RRmmdd')

【讨论】:

什么是RR?不是必须是'YYmmdd' RR是特定的Oracle格式,如果两位数的年份小于50则认为是当前世纪,否则是上世纪。 '14' -> 2014 年,'88' -> 1988 年。 谢谢。有用的细节

以上是关于如何将 NUMBER 转换为 DATE 格式的主要内容,如果未能解决你的问题,请参考以下文章

oracle中如何将varchar型转换成int型

如何将UNIX风格时间转换为标准格式

如何将JAVA DATE类型的日期 转换成指定格式类型的 (如:YYYY-MM-DD) 的 DATE类型数据?

Oracle date、char、number处理转换(转)

如何把SQL datetime转换成varchar

ORACLE中to_char、to_date、trunc、to_number、cast函数