sql - 如何在R中使用for循环查询表?

标签 sql r database

我有一个带有表名称的向量:

table_names <- c("table1", "table2", "table3", "table4")

我想使用 for 循环查询所有限制为 100 的表:

for (val in table_names){
   my_query = pastge0("SELECT * FROM", val, " LIMIT 100")
   dbGetQuery(con, my_query)

如您所见,此循环创建了 4 个查询和 4 个表。不过我希望对这些表进行命名。如何获得这些表格?

最佳答案

通常最好使用 lapply 并将帧保留在 列表 中(请参阅 https://stackoverflow.com/a/24376207/3358227 ):

allfour <- lapply(setNames(paste("select * from", table_names, "limit 100"),
                           table_names),
                  DBI::dbGetQuery, conn = con)

如果您不希望它们出现在 list 中,那么您可以使用 list2env 将它们分配到环境中,例如

list2env(allfour, envir = .GlobalEnv)

关于sql - 如何在R中使用for循环查询表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68291994/

相关文章:

mysql - mysql中的where子句中如何使用and运算符?

r - 如何在 RStudio 服务器中同时将输出保存到控制台和文件?

r - 在两个数组之间划分特定值

php - 多次运行 MySQL INSERT 查询(将值插入多个表)

sql - 如何从 Azure SQL 数据库中的所有表中删除所有行?

r - igraph:从顶点 igraph r 开始查找连续连接的顶点

mysql - SQL多连接并执行Count查询

sql - 简单的库存 SQL 查询未列出所有产品 MS-ACCESS

php - 将具有唯一 ID 的文件名从新文件夹移动到 SQL 数据库

php - 在 CodeIgniter 中使用多个数据库