1

我有一个非常大data.frame的,超过 500,000 行。

现在我需要从我的数据库(Oracle 11g)中检索每一行的数据。诀窍是我不知道如何有效地运行数十万个查询。

我一直在尝试使用dplyr此功能,但找不到有关如何操作的文档。我应该注意,我只有对我的数据库的读取权限。

我的代码:

DeliveredIds$ID <- c(1:500000)

sql_select(db_conn,
       select = c("ID", "CATEGORY"),
       from = "DELIVERIES",
       where = list(ID %in% DeliveredIds$ID, #the 500K IDs that I need to query data for
                    ASOF = as.Date("2017-01-31"))
       )

最初我尝试这样做,ROracle但我收到错误消息,说我试图一次查询太多项目(我不再有此代码)。

因此,重申我的问题是如何通过多行而不是一行来遍历 data.frame?

笔记

我对其他解决方案完全开放,但此时我唯一能想到的就是编写一个循环,一次查询几百行并随时更新数据库(效率不高,但我怀疑我还有其他选择)。

4

0 回答 0