使用R PostGreSQL将表导出到Redshift中的CSV

时间:2017-04-19 16:56:47

标签: r postgresql csv export

我从工作站远程使用R连接到Redshift。

password=

然后我创建了一个表:

install.packages("RPostgreSQL") 
library (RPostgreSQL)

drv <- dbDriver("PostgreSQL")

con1 <- dbConnect(drv, host="url", port="xxxx", 
                  dbname="db_name", user="id", password="password") 

dbGetInfo(con1) 

现在我想将此表导出到我工作站上的.csv文件中,该怎么做?同样,我的工作站上没有安装PostGres数据库,只使用R来访问它。

此外,这个表是大型的,4列,1400万行。

谢谢!

2 个答案:

答案 0 :(得分:0)

您需要将查询结果下拉到本地对象,然后将对象转储到CSV。 res <- dbSendQuery(con1, "select * from schema.table_name"); dat <-dbFetch(res); readr::write_csv(dat, "~/output.csv")的某些内容应该让你开始。

答案 1 :(得分:0)

我在发帖后想出来 - 分享..

 system.time( fwrite(dbReadTable(con1, c("schema","table")), file="file.csv", sep=",", na="", row.names=FALSE, col.names=TRUE ))

我听说羽毛更快?

这是4300万行,4列,花了15分钟。