通过R中的ROracle从Oracle查询中获取正确的日期时间

通过R中的ROracle从Oracle查询中获取正确的日期时间,第1张

概述我在R中使用 ROracle来访问Oracle数据库. 我注意到,自夏天时间更改以来,任何DATE(日期时间)Oracle列现在都被错误地转换(我在R中得到的时间比在Oracle DB中少一个小时). 从vignette的第12页(我很难理解)看起来像ROracle和R交换日期时间是自1-1-1970 UTC以来的秒数,并且R随后调整为当地时区. 这就是我的工作 drv <- dbDriver(" 我在R中使用 @L_301_0@来访问Oracle数据库.

我注意到,自夏天时间更改以来,任何DATE(日期时间)Oracle列现在都被错误地转换(我在R中得到的时间比在Oracle DB中少一个小时).

从vignette的第12页(我很难理解)看起来像ROracle和R交换日期时间是自1-1-1970 UTC以来的秒数,并且R随后调整为当地时区.

这就是我的工作

drv <- dbDriver("Oracle");con <- dbConnect(drv,username = Login,password = Pwd,dbname = DB,prefetch=TRUE,bulk_read=1e6);test.query <- "SELECT * FROM MYtable WHERE ( A > to_date('2008-03-03 12:30:00','YYYY-MM-DD HH24:MI:SS') AND A < to_date('2008-03-03 12:40:00','YYYY-MM-DD HH24:MI:SS')  AND [other stuff])"test <- dbGetquery(con,test.query);head(test[,c("A","B","C")])#                    A                   B                   C#1 2008-03-03 11:30:38 2008-03-02 23:00:00 2008-03-02 23:00:00 #HERE IT SHOulD BE +1 HOUR#2 2008-03-03 11:30:38 2008-03-02 23:00:00 2008-03-02 23:00:00#3 2008-03-03 11:30:41 2008-03-02 23:00:00 2008-03-02 23:00:00#4 2008-03-03 11:31:25 2008-03-02 23:00:00 2008-03-02 23:00:00#5 2008-03-03 11:31:25 2008-03-02 23:00:00 2008-03-02 23:00:00#6 2008-03-03 11:31:34 2008-03-02 23:00:00 2008-03-02 23:00:00class(test$A)[1] "POSIXct" "POSIXt" attributes(test$A)$class[1] "POSIXct" "POSIXt"

这是我的sessionInfo()

sessionInfo()R version 2.15.2 (2012-10-26)Platform: x86_64-w64-mingw32/x64 (64-bit)locale:[1] LC_ColLATE=french_France.1252  LC_CTYPE=french_France.1252    LC_MONETARY=french_France.1252[4] LC_NUMERIC=C                   LC_TIME=french_France.1252    attached base packages:[1] stats     graphics  Grdevices utils     datasets  methods   base     other attached packages:[1] data.table_1.8.9 ROracle_1.1-7    DBI_0.2-5       loaded via a namespace (and not attached):[1] tools_2.15.2

以下是我从管理员处获得的Oracle DB的信息

我该怎么做才能正确解决这个问题(不只是增加1小时,我将不得不在夏季结束时收回)

解决方法 这似乎在2014-11-20发布的 ROracle-1.1.12中得到修复.有关时区如何工作的信息,请参阅有关?dbReadtable的文档. 总结

以上是内存溢出为你收集整理的通过R中的ROracle从Oracle查询获取正确的日期时间全部内容,希望文章能够帮你解决通过R中的ROracle从Oracle查询中获取正确的日期时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1165867.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存