English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Учебник MongoDB для начинающих

Учебник MongoDB для продвинутых

Проекция документа MongoDB

В MongoDB проекция означает выбор только необходимых данных, а не всех данных документа. Если документ имеет 5 полей, а вам нужно показать только 3 поля, то выберите только 3 поля.

метод find()

Метод find() MongoDB, в 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"}
{"_id":ObjectId("507f191e810c19729de860e3"),"title":"Обзор w3codebox"}

Следующий пример будет отображать заголовок документа при поиске документа.

>db.mycol.find({},{"title":1,_id:0})
{"title":"Обзор MongoDB"}
{"title":"Обзор NoSQL"}
{"title":"Обзор w3codebox"}
>

Обратите внимание_idВсегда отображается при выполнении метода find(), если вы не хотите отображать это поле, вам нужно установить его значение в 0.