sql >> Base de Datos >  >> NoSQL >> MongoDB

Grupo agregado de MongoDB en la colección del niño interno y obtenga el documento completo con el conteo

El principal problema es que necesita revisar toda la colección (en esta situación, no puede usar los índices para acelerar el proceso).

Puedes probar este código (tiene menos funcionamiento que el tuyo):

db.getCollection('User').aggregate([
    {
        $unwind: "$UserSubscriptions"
    },
    {
        $group: {
            _id:"$UserSubscriptions.Subscription.Publication.Code",
            users: {$addToSet: "$_id"}
        }
    },
    {
        $project: {"PublicationCode": "$_id", "Count": {$size: "$users"}}
    }
])