【发布时间】:2014-01-27 07:47:45
【问题描述】:
我正在使用 rmongodb 在 R 中运行 mongodb 查询。我需要查找文档中是否存在某个字段。但是,$exists 不会产生任何结果。这是用于查询的示例代码。
library(rmongodb)
> mongo <- mongo.create(host="localhost")
> dbns <- mongo.get.database.collections(mongo, db="namedisambiguation")
> buf <- mongo.bson.buffer.create()
> mongo.bson.buffer.start.object(buf, "name")
[1] TRUE
> mongo.bson.buffer.append(buf, "$exists", 1L)
[1] TRUE
> qrbson <- mongo.bson.from.buffer(buf)
> cur <- mongo.find(mongo, ns=dbns, query=qrbson)
> qrbson
name : 3
$exists : 16 1
> mongo.cursor.next(cur)
[1] FALSE
我已尝试使用 TRUE、“True”、“true”、1 而不是 1L 进行此查询,但所有这些都会产生相同的结果。我已经在 mongo 控制台中检查了这个查询,结果是根据需要。但是在 R 中,它的生产是空的。我在某处做错了什么吗?
【问题讨论】:
-
周一早上的幽默:很高兴知道不再有“$exists”了。终于男女平等了! :-)