0

我有一个包含 5 行的集合,但我需要选择一个:

for row in db.foo.find({},{"_id":1}).limit(1).sort("_id",-1):print row

结果:

{u'_id': 4}

但是,当计数光标

flag=db.foo.find({},{"_id":1},limit=1).sort("_id",-1)
print flag.count()

结果=5

结果flag=db.foo.find({},{"_id":1},limit=1).sort("_id",-1).count():5

有人知道为什么会这样吗?

MongoDB外壳版本:2.4.4

pymongo.version '2.5.1+'

4

1 回答 1

0

count默认情况下会忽略skiplimit您可以通过设置with_limit_and_skip标志来更改它,例如:

flag = db.foo.find({}, {"_id":1}, limit=1).sort("_id", -1)
print flag.count(with_limit_and_skip=True)
于 2013-08-20T16:11:25.413 回答