0

我有包含一些数字的变量

  x1
  6589 
  11482
  13573 

另一个变量 x2 包含

  x2
  110426
  163684
  169555

我试图在 R 的 sql 语句中将这些值作为变量传递。到目前为止,如果我传递一个变量(x1 或 x2)我很好

 id = paste((df$x1),collapse = ",")
 id1= paste0("(", id, ")")
 id1

 example <- sqlQuery(myDB,"SELECT * FROM dbo.my_table WHERE COLUMN1 in", id1)

不确定如何使用两个变量 x1 和 x2 执行此操作

example <- sqlQuery(myDB,"SELECT * FROM dbo.my_table 
                    WHERE COLUMN1 in", id1"
                    AND   COLUMN2 in", id2" )  ?????

任何帮助表示赞赏。

4

1 回答 1

1

您应该首先准备字符串。

我对 R 不是 100% 有信心只要确保关键字之间的所有空格都在那里。

id1 = "(1,2,3)"
id2 = "(8,9,10)"
strQuery =  paste("SELECT * FROM dbo.my_table ",
                  "WHERE COLUMN1 in " , id1,
                  " AND  COLUMN2 in " , id2, sep = " ")

然后:

example <- sqlQuery(myDB , strQuery)
于 2015-08-23T04:10:57.377 回答