在Oracle数据库中将float转换为DateTime



我有一个Oracle表,其中的列以浮点表示形式存储日期和时间。它看起来像这样:

40610.389837963 -> should be decoded to 5/11/2011 16:06
40676.2641666667 -> should be decoded to 5/13/2011 6:20

我知道编码值和解码值,但我不知道如何将这种浮点格式解码为"正常"日期时间:-)

当描述这件事时,有人能解释一下或给我一个链接吗?如有任何帮助,将不胜感激

提前谢谢。安德里。

您的日期/时间格式是Excel在Windows上使用的格式。如果在Excel中为日期单元格指定数字格式,您将看到相同的数字。您也可以将数字放入Excel单元格中,并为其指定日期格式以显示日期。

这基本上是自1900年1月1日以来的天数,只是Excel在闰年处理方面有一些错误。

您可以使用以下SQL表达式将其转换为正确的日期:

select to_date('12/30/1899', 'MM/DD/YYYY') + 40676.2641666667 from dual;

然而,40610.389877963号被转换为2011年3月8日09:21。但我猜你在什么地方搞混了。

相关内容

  • 没有找到相关文章

最新更新