首页 > 解决方案 > Mongodb - 如何只选择“n”列

问题描述

我有一个包含 15 列的集合,只想带 4 个,但如果我使用它,它会带来所有列

tb.find_one({'column1':'value'},{'_id':1, 'column1':1, 'column4':1, 'column2':1})

我是否必须指定所有我不想要的列?

标签: mongodb

解决方案


你所做的完全正确。如果您只需要这些列,请使用1包含运算符指定它们。我很想知道您看到的其他情况:

from pymongo import MongoClient

tb = MongoClient()['mydatabase'].tb

tb.insert_one({f'column{x}': 'value' for x in range(15)})

print(tb.find_one({'column1': 'value'}, {'_id': 1, 'column1': 1, 'column4': 1, 'column2': 1}))

印刷:

{'_id': ObjectId('5fd35c58b9e268dbd76d5299'), 'column1': 'value', 'column2': 'value', 'column4': 'value'}

推荐阅读