R:将变量插入RMongo命令

时间:2016-02-20 01:15:04

标签: r mongodb

我目前正在使用RMongo包来提供RMongoDB之间的界面。我正在查询MongoDB并按个人ID解析对象。

如何做到这一点的一个例子如下:

library(RMongo)

mongo  <- mongoDbConnect("test")
output <- dbInsertDocument(mongo, "test_data", '{"foo": "bar"}')
output <- dbGetQueryForKeys(mongo, 'test_data', "{'_id': { '$oid' : '123456789' }}", '{"_id":1, "foo":1}')
output

我没有像上面那样在查询中键入对象的ID,而是将ID保存为某个变量,并将此变量插入到查询中。例如:

i <- '123456789'
output <- dbGetQueryForKeys(mongo, 'test_data', "{'_id': { '$oid' : i }}", '{"_id":1, "foo":1}')
output

任何成功实现这一目标的帮助都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

如果您只想插入变量i,那么您可以使用pastepaste0函数:

i <- '123456789'
output <- dbGetQueryForKeys(mongo, 'test_data', paste("{'_id': { '$oid' : ",i,"}}", sep = "",collapse = ""), '{"_id":1, "foo":1}')
output

paste函数允许您在将变量i转换为字符串后将其连接起来。使用?paste获取更多信息。