首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将mongo控制台或RMongo查询转换为rmongodb

将mongo控制台或RMongo查询转换为rmongodb
EN

Stack Overflow用户
提问于 2014-02-28 15:40:48
回答 2查看 312关注 0票数 0

我在RMongo上遇到了麻烦,所以我试图把我的工作转换成rmongodb。在这里中,我的查询在mongo控制台中如下所示:

代码语言:javascript
复制
db.final.find({},{"ids.myid":1,"org.name":1,"_id":0}).skip(0).limit(5000)

在RMongo中是这样的:

代码语言:javascript
复制
dbGetQueryForKeys(db,'final', '{}','{"ids.myid":1,"org.name":1,"_id":0}',skip=0,limit=5000)

(后者不是返回值,但Mongo控制台可以工作。)

我的理解是,在从文件中中,它应该是这样的:

代码语言:javascript
复制
library(rmongodb)
mcon <- mongo.create(host="myurl:port",db="dbname")

fields = mongo.bson.buffer.create()
mongo.bson.buffer.append(fields, "ids.myid", 1L)
mongo.bson.buffer.append(fields, "org.name", 1L)
mongo.bson.buffer.append(fields, "_id", 0L)

cur <-  mongo.find(mcon,"final",fields=fields, limit=5000) # query takes the default null
df <- mongo.cursor.to.data.frame(cur)

然而,我得到了:

代码语言:javascript
复制
data frame with 0 columns and 0 rows

我的原始查询的正确翻译是什么?

我知道我的联系是有效的,因为:

代码语言:javascript
复制
mongo.get.databases(mcon)

工作并显示正确的数据库。但是,我调用集合的方式可能有问题,因为

代码语言:javascript
复制
mongo.find.one(mcon,"final") 

返回NULL。尽管db.final.findOne()工作得很好,但还是会这样!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-03 08:31:39

集合的命名空间(ns)是错误的。你的数据库的名字不见了。试试这个:

代码语言:javascript
复制
cur <-  mongo.find(mcon,"dbname.final",fields=fields, limit=5000)

代码语言:javascript
复制
mongo.find.one(mcon,"dbname.final")
票数 0
EN

Stack Overflow用户

发布于 2014-03-03 13:47:12

我的缓冲区构造也出错了。

代码语言:javascript
复制
fields = mongo.bson.buffer.create()
mongo.bson.buffer.append(fields, "ids.myid", 1L)
mongo.bson.buffer.append(fields, "org.name", 1L)
mongo.bson.buffer.append(fields, "_id", 0L)

应该是

代码语言:javascript
复制
buf = mongo.bson.buffer.create()
mongo.bson.buffer.append(buf, "ids.myid", 1L)
mongo.bson.buffer.append(buf, "org.name", 1L)
mongo.bson.buffer.append(buf, "_id", 0L)
fields <- mongo.bson.from.buffer(buf)

通过文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22099484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档