R使用sqlQuery

时间:2016-12-20 00:43:29

标签: r

我知道如何从数据库导入表,它可以工作;但是,如果我有6个表,是否有更好的方法从6个不同的表导入并创建6个不同的data.frames?

Notes< - sqlQuery(dbConnection,“                       选择 *                       从                       表1" )

...

1 个答案:

答案 0 :(得分:3)

考虑对表列表进行lapply调用:

tableList <- c("Table1","Table2","Table3","Table4","Table5","Table6")

# BUILD LIST OF DFS FROM QUERIES
dfList <- lapply(tableList, function(t) sqlQuery(dbConnection, paste0("SELECT * FROM ",  t))

# NAME EACH ELEMENT TO CORRESPONDIND TABLE NAME
dfList <- setNames(dfList, tableList)

然后,如果您希望单独的数据帧使用list2env,但您始终可以直接从 dfList 工作,以避免在全局环境中使用许多对象:

list2env(dfList, envir=.GlobalEnv)