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"}
>

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

广告