oracle日期算术返回意外大的数字

标签 oracle oracle10g

我有一个关于 oracle 对日期进行算术的方式的问题(连接到 10g 数据库)。给出以下查询:

select DateX - DateY as Number_Of_Days from table

我的经验让我相信oracle会返回两个日期之间的天数差异(如果DateX早于DateY,则会返回负的天数)。

对于我的查询返回的大多数记录来说,这是事实。但是,我的数据集中有一条记录,其中 DateX = 19-JUN-08 和 DateY = 19-MAY-08 并且这两者的减法 = 365268。

有什么想法吗?

最佳答案

我会尝试一下。我认为您实际上将 1008 年 5 月 19 日作为您的另一个日期。

WolframAlpha.com 给出的从 1008 年 5 月 19 日到 2008 年 6 月 19 日的差异为 365,274 天。然而,那里有一些奇怪的日子。 1100年、1300年、1400年、1500年、1700年、1800年和1900年不是闰年。这相差了 7 天,这几乎就是您需要到达的地方。

关于oracle日期算术返回意外大的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17005672/

相关文章:

java - JBOSS EAP 7.1连接oracle 12c数据库

sql - 如何从字典 View 中发现 Oracle 12c 关联数组的索引类型?

mysql - 解释查询在 oracle 数据库中不起作用

eclipse - 在 Hibernate 中更改数据库时出现问题

sql - Oracle 中的 TO_NUMBER 函数出现奇怪的问题

plsql - Oracle - 如何获取索引字段等信息

java.sql.SQLException : ORA-00942: table or view does not exist with JPA entityManager. createQuery()

sql - 如何使用round和trunc得到dd :mm:yy:hh

Oracle 数据文件碎片整理

dbms_xmlgen 包的 Oracle 问题