我试图用python从mongodb中检索数据.我的数据库包含很多数据.所以我想在检索时限制数据.我试过了

import datetime
from pymongo import Connection
connection = Connection('localhost',27017)
db = connection['MyWork']


db_data = db.myusers.find().limit(2)
#db_data = db.myusers.find()[0:2]
print db_data
print db_data.count()
print db_data[0]
print db_data[1]
print db_data[2]

但当我try 上面的方法时,我得到了不止两个文档.我使用pymongo驱动程序.如何限制这些值

<pymongo.cursor.Cursor object at 0x000000000267D518>
3
{u'age': 24.0, u'_id': ObjectId('552b6e90aad3e2d909d5fb28'), u'place': u'Ravipadu', u'name': u'Shiva'}
{u'age': 28.0, u'_id': ObjectId('552b6eabaad3e2d909d5fb29'), u'place': u'Rajahmundry', u'name': u'Anil'}
{u'age': 30.0, u'_id': ObjectId('552b6ec1aad3e2d909d5fb2a'), u'place': u'Manchili', u'name': u'Kishore'}

推荐答案

this question所述,索引访问将忽略limit.count()不遵守manual所解释的限制或默认跳过.你可以通过with_limit_and_skip=True,让count()达到极限.

print db_data.count(with_limit_and_skip=True)

或者,您可以迭代光标以查看有效的限制.

for data in db.myusers.find().limit(2):
    print data

Mongodb相关问答推荐

用嵌套对象替换对象数组中的子字符串

如何在Mongo Aggregate Query中创建集合的对象ID数组,并在列表中查找另一个集合中的ID

如何将空值单独分组?

如何在 mongodb 查找的外键中使用正则表达式

Mongo C#忽略属性

如何在 MongoDb 中进行类似于嵌套 Sql Select 查询的嵌套查询

如何使用 C# MongoDB 驱动程序检索字段子集?

Mongo查找对象内最长数组的查询

加载时将 mongo 存储的日期转换回自 Unix 纪元以来的毫秒数?

Mongoose Schema vs Mongo Validator

MongoDB 3 Java判断集合是否存在

Mongoose 不创建新集合

MongoDB Java API:put() 与 append()

如果我在 MongoDB 上使用 LINQ,为什么会失go 性能?

MongoDB - 文件大小巨大且不断增长

如何在第一个文档中恢复 MongoDB ChangeStream 而不仅仅是在我开始收听后更改

如何在 Ubuntu 上安装 mongodb-clients 最新版本?

缩短 MongoDB 属性名称值得吗?

Pymongo/bson:将 python.cursor.Cursor 对象转换为可序列化/JSON 对象

MongoDB Compass 中 JSON 输入意外结束