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

In Mongo, come abbinerei tutti gli articoli della collezione a un array più ampio?

Utilizzo di mongoDB Operatore set di aggregazioni puoi filtrare il tuo array. Per prima cosa scopri l'intersezione di un determinato array con l'attuale array di database e dopodiché usa il metodo set equals. controlla sotto la query:

db.collectionName.aggregate({
    "$project": {
    "checkAllElem": {
        "$setEquals": [{
            "$setIntersection": ["$items", [5, 2, 6, 4, 7, 8]]
        }, "$items"]
    },
    "items": 1
    }
}, {
    "$match": {
    "checkAllElem": true
    }
})