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

MongoDB - Projete apenas o elemento correspondente em uma matriz


Use o operador posicional($ ) para projetar apenas o primeiro subdocumento correspondente.
db.t.find({"array":{"type":"dog", "name":"Steve"}},{"array.$":1})

Usando meteor , você teria que manter a agregação, já que o positional operador não funciona:
db.t.aggregate([
{$match:{"array.type":"dog","array.name":"Steve"}},
{$unwind:"$array"},
{$match:{"array.type":"dog","array.name":"Steve"}}
])