Met MongoDB 3.2-versie en nieuwer, de $unwind
operator heeft nu enkele opties waarbij met name de preserveNullAndEmptyArrays
optie lost dit op.
Als deze optie is ingesteld op true en als het pad null is, ontbreekt of een lege array is, $unwind
voert het document uit. Indien onwaar, $unwind
voert geen document uit als het pad null is, ontbreekt of een lege array is. Stel het in uw geval in op true:
db.collection.aggregate([
{ "$unwind": {
"path": "$solved",
"preserveNullAndEmptyArrays": true
} },
{ "$group": {
"_id": "$_id",
"login": { "$first": "$login" },
"solved": { "$sum": "$solved.points" }
} }
])