Rmongo查询函数给出错误

时间:2018-06-10 20:35:09

标签: r mongodb rmongo

我正在尝试使用Rmongo库连接R中的mongodb。但查询函数给我错误。

> chn = mongoDbConnect("marketing_db", host = 'localhost', port = 27017)
> print(dbShowCollections(chn))
character(0)
> results = dbGetQuery(chn, marketing_data, {}, 0, 5)
Error in dbGetQuery(chn, marketing_data, { : 
  object 'marketing_data' not found
> results = dbGetQuery(chn, "marketing_data", {}, 0, 5)
Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’
> results = dbGetQuery(chn, "marketing_data", query = {}, skip = 0, limit = 5)
Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’

其中marketing_db是db,marketing_data是我的mongodb中的集合

以下是mongo console的输出:

> show dbs
admin         0.000GB
config        0.000GB
local         0.000GB
marketing_db  0.001GB
myblogs       0.000GB
test          0.003GB
> use marketing_db
switched to db marketing_db
> show collections
marketing_data
> db.marketing_data.count()
7414
> db.marketing_data.find().pretty().limit(1)
{
        "_id" : ObjectId("5b1d65c6cc6e576297462cdc"),
        "custAge" : 55,
        "profession" : "admin.",
        "marital" : "single"
}

我正在使用R for Windows 3.4.3和MongoDB 3.6.5

请帮助解决此错误。

1 个答案:

答案 0 :(得分:0)

尝试将查询json作为字符串传递:

results = dbGetQuery(chn, "marketing_data", "{}", 0, 5)