R 中 sql 查询中的 SYSDATE

SYSDATE inside an sql query in R

我正在尝试自动化我提取上周数据的代码,并且 运行 每周提取一次。如何在 R.

中的 sql 查询中获取 Sys.Date()

library('RJDBC')

Tdata<- dbGetQuery(conn, "select roll_id,source,create_date,login from master_data where create_date>'2017-07-17'")

所以基本上我想创造条件 create_date> Sys.Date()-7。怎么做?

我认为最好的选择是从 SQL 查询(不是 R)中获取当前日期。我相信你可以用 GETDATE() 做到这一点。

另一种方法是使用 R 中的 paste0() 函数构造您的查询文本,然后再将其传递到 dbGetQuery()

它会像 query_txt <- paste0("select roll_id, source, create_date, login from master_data where create_date > '", Sys.Date()-7, "')"

然后Tdata <- dbGetQuery(conn, query_txt).

希望对您有所帮助!

尝试使用 paste(或 paste0):

Tdata <- dbGetQuery(conn,paste0("select roll_id,source,create_date,login 
                    from master_data where create_date>'", Sys.Date()-7, "'"))