MongoDB - 投影


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

find() 方法

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

句法

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

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

例子

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

{_id : ObjectId("507f191e810c19729de860e1"), title: "MongoDB Overview"},
{_id : ObjectId("507f191e810c19729de860e2"), title: "NoSQL Overview"},
{_id : ObjectId("507f191e810c19729de860e3"), title: "Tutorials Point Overview"}

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

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

请注意,执行find()方法时始终显示_id字段,如果您不需要该字段,则需要将其设置为 0。