1

我正在使用 ROracle 包从数据库中获取记录。我需要从中传递多个值dbGetQuery(),以便可以在查询的 where 子句中使用它们。假设我有:

 query <- "select abc from tablename where value1= (:1)

然后我可以通过调用获取表数据

data <- dbGetQuery(connection, query, condition1 ). 

我将获取数据变量中的数据。我面临的问题是,如果我必须dbGetQuery() 从那时起传递多个值,该怎么做。

例子:

query <- "select abc from tablename where value1= (:1) and value1=(:2)

现在如果我打电话

data <- dbGetQuery(connection, query, condition1, condition2)

它会给出错误。

我尝试传递一个向量,但仍然出现错误,例如

data <- dbGetQuery(connection, query, c("condition1", "condition2"))

有什么办法可以做到吗?

4

1 回答 1

2

像这样的东西应该工作:

data <- dbGetQuery(connection, query, 
                   list=as.list(c("condition1", "condition2")))

希望能帮助到你。

于 2016-03-31T13:21:20.480 回答