2

我正在尝试在 rmysql 中进行查询以从数据库中获取数据。我在一列中有一个 idNumbers 列表,我想匹配并从数据库中提取记录。

R数据框:df1

idNumColumnInR        saleAmt
  345                   22.34
  456                   44.53
  678                   77.87
  ...                    ...

我认为这就像从 db -> R 开始:

select * from dataBase where idNum in (df1$idNumColumnInR).  

我可以只使用 for 循环并遍历列的每一行,但很好奇是否有更好的方法。

4

1 回答 1

3

您无需使用循环即可使用 paste()。

例如:

df1 <- data.frame(idNumColumnInR=c(345,456,678), 
 saleAmt=c(22.34,44.53,77.87))

qry <- paste("SELECT * from dataBase where idNum in (",
 paste(df1$idNumColumnInR, collapse=","),")"  )
于 2011-09-29T16:27:08.937 回答