sql >> Database >  >> NoSQL >> MongoDB

MongoDB:Hoe te vinden op subdocument-ID?

In uw document:

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

De player veld in de ingesloten verzameling players is een BSON-ID (d.w.z. het ziet er ongeveer uit als ObjectId("4e208e070347a90001000008") ), dus ik denk dat je je zoekopdracht als volgt moet structureren:

db.games.find( { "teams.players.player": ObjectId("2") } )

Let op, ik heb de _id . weggelaten -- op voorwaarde dat het werkt in een mongo-console, vermoed ik dat de Coffee-query vergelijkbaar zal zijn (laat de _id vallen deel).



  1. Sorteer op queryresultaten gebaseerde desc-waarde van genest subdocument in array Mongoose/Mongodb

  2. Hoe het aantal subkolommen in MongoDB te beperken?

  3. Een array-element voorwaardelijk evalueren om te retourneren

  4. Spring Data MongoDB hoe de vervaltijd programmatisch toe te wijzen