MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Consulta de uma lista contida em outra lista no mongodb


Há uma pergunta relacionada Verifique se todos os elementos na matriz correspondem à condição com uma resposta com uma boa abordagem para este cenário. Refere-se a uma matriz de documentos incorporados, mas pode ser adaptado para o seu cenário assim:
db.list.find({ 
    "list" : { $not : { $elemMatch : { $nin : [1,2,3,4,5] } } },
    "list.0" : { $exists: true }
})

ou seja. a lista não deve ter nenhum elemento que não esteja em [1,2,3,4,5] e a lista deve existir com pelo menos 1 elemento (supondo que isso também seja um requisito).