MongoDB - Proiezione

In MongoDB, proiezione significa selezionare solo i dati necessari piuttosto che selezionare tutti i dati di un documento. Se un documento ha 5 campi e devi mostrarne solo 3, seleziona solo 3 campi da essi.

Il metodo find ()

MongoDB's find(), spiegato nel documento di query di MongoDB, accetta un secondo parametro opzionale che è l'elenco dei campi che si desidera recuperare. In MongoDB, quando eseguifind()metodo, quindi visualizza tutti i campi di un documento. Per limitare ciò, è necessario impostare un elenco di campi con valore 1 o 0. 1 viene utilizzato per mostrare il campo mentre 0 viene utilizzato per nascondere i campi.

Sintassi

La sintassi di base di find() metodo con proiezione è il seguente:

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

Esempio

Considera la raccolta mycol ha i seguenti dati:

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

L'esempio seguente visualizzerà il titolo del documento durante l'interrogazione del documento.

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

notare che _id viene sempre visualizzato durante l'esecuzione find() metodo, se non vuoi questo campo, devi impostarlo come 0.