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

MongoDB:Como encontrar por ID de subdocumento?


No seu documento:
"players": [
            {
                "player": { "$oid": "4" },
                "score": 500,
            },
            {
                "player": { "$oid": "5" },
                "score": 550,
            }
        ]

O player campo na coleção incorporada de players é um ID BSON (ou seja, parece algo como ObjectId("4e208e070347a90001000008") ), então acho que você deve estruturar sua consulta assim:
db.games.find( { "teams.players.player": ObjectId("2") } )

Observe que eu eliminei o _id -- desde que funcione em um console mongo, suspeito que a consulta Coffee será semelhante (solte o _id parte).