Med MongoDB 3.2 version og nyere er $unwind
operatoren har nu nogle muligheder, hvor især preserveNullAndEmptyArrays
mulighed vil løse dette.
Hvis denne indstilling er sat til sand, og hvis stien er null, mangler eller et tomt array, $unwind
udskriver dokumentet. Hvis falsk, $unwind
udskriver ikke et dokument, hvis stien er null, mangler eller et tomt array. I dit tilfælde skal du indstille den til sand:
db.collection.aggregate([
{ "$unwind": {
"path": "$solved",
"preserveNullAndEmptyArrays": true
} },
{ "$group": {
"_id": "$_id",
"login": { "$first": "$login" },
"solved": { "$sum": "$solved.points" }
} }
])