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

Mongoose - Agregação $match com base em valores enum


Você pode tentar a agregação abaixo no mongodb 3.4.4 e acima

Bem, você tem chaves desconhecidas aqui com valor com NONE e null e, portanto, você pode usar $objectToArray agregação para transformar chaves em valores e pode facilmente $ corresponder com eles
db.collection.aggregate([
  { "$addFields": {
    "data": { "$objectToArray": "$foods.fruits" }
  }},
  { "$match": { "data.v": { "$in": [ "NONE", null ] } } },
  { "$project": { "data": 0 }}
])