【问题标题】:Passthrough query in RR中的直通查询
【发布时间】:2014-11-21 22:28:27
【问题描述】:

在 SAS 中我习惯了 PROC SQL,我可以使用它来查询数据库并将数据返回到 SAS,或者在数据库中执行 SQL 代码。例如,在 SAS 中,我可以使用 PROC SQL 运行直通查询,以从数据库上的另一个表在我的数据库上创建一个新表。

proc sql;
connect to netezza ( SERVER=X DATABASE=Z  AUTHDOMAIN="Y");
execute
(
create table B as
select * from A

)
by netezza
;
quit;

在 R 中,我可以使用 RODBC 和如下代码连接和查询数据库:

connect1 <- odbcConnect("NZ",believeNRows=FALSE) 

query1 <- "SELECT * FROM A"

df_imp <- sqlQuery(connect1, query1)

但是我该如何去做类似于上面的 SAS 代码的事情呢?

【问题讨论】:

标签: sql r odbc netezza


【解决方案1】:

您可以使用相同的sqlQuery

sqlQuery(connect1, "CREATE TABLE b as SELECT * FROM a")

【讨论】:

  • 谢谢。我试过了,但失败了。出于某种原因,我一定是做错了,因为当我今天早上重新尝试时,它工作得很好。
【解决方案2】:

IBM 提供了多个接口以将 R 与 Netezza 结合使用,包括在设备中运行 R。

这些是在 GPL 下免费提供的。最初它只能通过 Revolution 付费使用,但一年多前发生了变化。

您必须向 IBM Developerworks (www.ibm.com/developerworks) 注册。

注册后即可下载软件和安装说明。

http://ibm.co/XOC1q3

在这个 wiki 上(在“如何”部分下),有几个关于将 R 与 Netezza 一起使用的文档和实验室。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    • 2013-03-16
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多