我正在尝试使用基于https://blogs.aws.amazon.com/bigdata/post/Tx1G8828SPGX3PK/Connecting-R-with-Amazon-Redshift的方法的dplyr和RPostgreSQL将R连接到Redshift
现在我知道我的数据库,主机端口,用户和密码。所以,这是我的代码:
> myRedshift <- src_postgres('aaa',
host = 'aaa-aaa-aaa.com',
port = 8000,
user = "xy",
password = "xy")
运行此行后,我有一个列表myRedshift。看起来很好。但是,当我跑:
a <- tbl(myRedshift, "base_posdata")
问题是:数据库aaa包含几个文件夹,如a1,a2,a3。表base_posdata位于a1下。所以应该是这样的:
a <- tbl(myRedshift, "a1//base_posdata")
当然格式不正确。所以当我使用上面的代码时(&lt; -tbl(myRedshift,“base_posdata”)) ),我有错误信息:
Error in postgresqlExecStatement(conn, statement, ...) :
RS-DBI driver: (could not Retrieve the result : ERROR: relation "base_posdata" does not exist)
我想这是因为我没有提供正确的道路。 谁能告诉我怎么做?非常感谢。
答案 0 :(得分:1)
找到解决这个问题的方法:使用sql:
> a <- tbl(myRedshift, sql("SELECT * FROM aaa.a1.base_posdata"))
问题解决了