在MongoDB中,投影(Projection)意味着仅选择必要的数据,而不是选择全部数据,如果文档有5个字段,而只需要显示3个字段,则从中选择3个字段。

find()方法

MongoDB的 find()方法在MongoDB查询文档中进行了解释,该方法接受第二个可选参数是您要检索的字段列表,在MongoDB中,执行 find()方法时,它将显示文档的所有字段。要限制此范围,您需要设置一个值为1或0的字段列表。1用于显示字段,而0用于隐藏字段。

带投影的 find()方法的基本语法如下-

>db.COLLECTION_NAME.find({},{KEY:1})

考虑集合mycol具有以下数据-

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Learnfk Point Overview"}

以下示例将在查询文档时显示文档标题。

>db.mycol.find({},{"title":1,_id:0})
{"title":"MongoDB Overview"}
{"title":"NoSQL Overview"}
{"title":"Learnfk Point Overview"}
>

请注意,在执行 find()方法时,总是显示 _id 字段,如果您不希望使用此字段,则需要将其设置为0。

参考链接

https://www.learnfk.com/mongodb/mongodb-projection.html