【发布时间】:2015-11-08 19:47:07
【问题描述】:
我在 R 中有一个数据框,它有大约 100k 个 ID。我想将这些 ID 放置在使用 R 包 RODBC、MYSQL 和 redshift 将 R 连接到 Oracle、MySQL 和 redshift 表的查询中。
例如,
output <- dbGetQuery(conn,paste("select * from redshift_table
where ID in (select ID from df"))
当您只有几个 ID 但我的 ID 列表非常大并且我认为粘贴不起作用时,我已经看到了一些使用粘贴功能的解决方案。
如何将我的 R 数据框与 R 中的这些外部数据库连接起来?我不想在我的外部数据库中创建临时表。
提前致谢!
【问题讨论】:
-
我怀疑没有其他选择。过滤要么发生在 db 中,要么发生在 R 中,这将涉及将所有数据放在这两个位置之一。粘贴选项不起作用,因为数据库将有一个最大数量的项目,您可以在 IN 子句中放入。
-
上传到临时表并对其进行半联接
-
嗨哈德利。谢谢您的答复。您是说将 redshift 表或 df 上传到临时表中吗?在哪里?进入红移或R?我的 redshift 表很大,因此将所有这些都加载到 R 中可能不可行。