想要获取mongodb集合中所有的键名字
如:
db.things.insert( { type : ['dog', 'cat'] } ); db.things.insert( { egg : ['cat'] } ); db.things.insert( { type : [] } ); db.things.insert( { hello : [] } );
获取到所有的键名:
type, egg, hello
代码如下:
from pymongo import MongoClient from bson import Code def get_keys(db, collection): # db mongodb的集合 client = MongoClient() db = client[db] map = Code("function() { for (var key in this) { emit(key, null); } }") reduce = Code("function(key, stuff) { return null; }") result = db[collection].map_reduce(map, reduce, "myresults") return result.distinct('_id')
参考:https://stackoverflow.com/questions/2298870/get-names-of-all-keys-in-the-collection