Pada MongoDB 2.2 Anda dapat menggunakan kerangka kerja agregasi dengan $unwind
, $group
dan $project
tahap untuk mencapai ini:
db.users.aggregate([{$unwind: '$favorites.books'},
{$group: {_id: '$_id',
books: {$addToSet: '$favorites.books'},
name: {$first: '$name'}}},
{$project: {'favorites.books': '$books', name: '$name'}}
])
Perhatikan perlunya $project
untuk mengganti nama favorites
bidang, karena $group
bidang agregat tidak dapat disarangkan.