MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Mongodb:trova tutti i documenti in cui almeno un elemento dell'array non corrisponde?

Puoi farlo avvolgendo il tuo $nin in un $elemMatch operatore in modo che $nin viene applicato separatamente a ciascun elemento delle sections invece dell'insieme di elementi come gruppo:

Group.find({ sections: { $elemMatch: { $nin: archived_sections } } })
    .exec(function(err, groups){
        res.send(groups);
    }
);

Se almeno un elemento soddisfa il $elemMatch query, il documento corrisponde.