pymongo极限的光标bug?

时间:2013-08-19 15:54:35

标签: mongodb pymongo

我有一个包含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 shell版本:2.4.4

  
    
      

pymongo.version       '2.5.1 +'

    
  

1 个答案:

答案 0 :(得分: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)