Prøv at slappe af LearningNodes
array og derefter tælle dem ved at gruppere dem sammen
db.PedagogyNodes.aggregate([
{
$unwind:"$contentNodes.LearningNodes"
},
{
$group:
{
_id:"$contentNodes.LearningNodes",
count:{$sum:1}
}
}
])
Hvis du har brug for at lave nogen match, kan du bruge $match
scenen
db.PedagogyNodes.aggregate([
{
$match:{type:"topic"}
},
{
$unwind:"$contentNodes.LearningNodes"
},
{
$group:
{
_id:"$contentNodes.LearningNodes",
count:{$sum:1}
}
}
])
Besvarelse af det redigerede spørgsmål =>
Du var ikke i stand til at se outputtet på konsollen, da mongoshell ikke udskriver scriptoutput på skærmen. For at gøre dette skal du gøre følgende:
var result = records.PedagogyVersions.aggregate([......]);
result.forEach(function(resultDoc){
print(tojson(resultDoc))
})