从mongodb集合中提取所有_id的最佳方法

Gre*_*hov 3 python indexing mongodb pymongo

从mongodb集合中提取所有_id的最佳方法是什么?我正在使用pymongo与mongodb合作.以下代码:

for item in db.some_collection.find({}, {'_id': 1}):
    # do something
Run Code Online (Sandbox Code Playgroud)

需要一些时间来迭代所有集合.我只需要_id值,它们都应该适合记忆.为什么这段代码不能立即完成?

Pav*_*sov 6

用途distinct:

some_collection.distinct('_id')
Run Code Online (Sandbox Code Playgroud)
In [5]: c = pymongo.connection.Connection('127.0.0.1')

In [6]: c['test']['test'].insert({'a': 2})
Out[6]: ObjectId('5159c8e9d286da0efccb7b70')

In [7]: c['test']['test'].insert({'a': 3})
Out[7]: ObjectId('5159c8ecd286da0efccb7b71')

In [8]: c['test']['test'].insert({'a': 5})
Out[8]: ObjectId('5159c8edd286da0efccb7b72')

In [9]: c['test']['test'].distinct('_id')
Out[9]:
[ObjectId('5159c8e9d286da0efccb7b70'),
 ObjectId('5159c8ecd286da0efccb7b71'),
 ObjectId('5159c8edd286da0efccb7b72')]
Run Code Online (Sandbox Code Playgroud)