MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Posso usare $project per restituire un campo come documento di primo livello in una query di aggregazione mongo?

Sì, puoi usa $project fare quello. Devi solo dirgli di recuperare i contents annidati oggetto utilizzando notazione punto :

db.items.aggregate( {$project: {contents:'$field1.contents'}} );

Inoltre, se vuoi nascondere il _id campo dall'output, puoi specificare _id: 0 nel $project parametri:

db.items.aggregate( {$project: {contents:'$field1.contents', _id:0}} );