我在计算机上安装了ROracle,并成功连接到远程Oracle数据库。我可以使用dbplyr与表进行交互,并在我的计算机上收集数据。但是,当我尝试使用dplyr filter函数来过滤日期列时,我得到了如下错误:
Error in .valueClassTest(ans, "data.frame", "fetch") : invalid value from generic function ‘fetch’, class “try-error”, expected “data.frame”date列显示为datetime,但是lubridate函数对它们不起作用(使用as_date将datetime转换为date ),但是不抛出任何错误,base-r as.Date抛出这个错误:
Error in .oci.SendQuery(conn, statement, data = data, prefetch = prefetch, :
ORA-00936: missing expression如果我在我的计算机上收集数据,那么日期时间列可以正确显示,并且可以使用前面提到的所有函数。
谢谢。
发布于 2021-11-04 09:06:46
通过在dplyr管道中使用SQL原生函数和正确的日期掩码解决了此问题。
#setup db connection con...
tbl(con, "my_tbl") %>%
filter(Dates_column <= to_date('04.11.2021','DD.MM.YYYY'))https://stackoverflow.com/questions/69828035
复制相似问题