【发布时间】:2016-06-11 22:34:49
【问题描述】:
我在使用 R ODBC 连接 Access 2016 数据库时遇到了一个奇怪的问题。
参考 Access 数据库中的日期,R 中的日期相差 -28 天。
例如,在访问:1639-01-24;在 R:1638-12-27。 R中日期的格式为“1638-12-27 LMT”。
为了解决这个问题,我必须使用Format 函数将日期变量作为字符串获取:
Select format([date],'yyyy-mm-dd') ...
有人可以解释为什么会这样吗?
【问题讨论】:
-
这和公历有关系吗?差异太大。最近的日期(即 20 世纪)会发生什么
-
我认为你是对的!我检查了一个更新的日期,它是正确的。
-
但是对于 17 世纪和 18 世纪有错误但有变化:从 1686 年起 16 天; 1732 的 6 天。很奇怪。
-
一定是别的东西。公历是在 1582 年引入的,与儒略历的变化“只有”10 天。然而,许多国家采用日历的时间要晚得多,有些是不到 100 年前。不过,这不能解释 28 天。另外,请注意,Access (VBA) 日历实现是一个“伪”公历 日历,因为它很高兴地从 1582-10-15 的介绍退回到 100-01-01。因此,
DateAdd("m", -1, #1582/10/15#)返回 1582-09-15。
标签: r date ms-access odbc ms-access-2016