sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan finder man den matchede post i mongodb?

Dette er adfærden ved filtrering af indlejrede dokumenter på flere niveauer, normalt ville det matchende filter returnere hele dokumentet, ikke undersættene.

Normalt positional operator $ bruges til at matche underdokumenterne i updates . Men funktionen er endnu ikke implementeret i returspecifikationer.

Der er allerede et udestående problem i mongo Støtte til positionel ($) operatør i felter for at returnere specificator . (Log venligst ind for at stemme, hvis du virkelig havde brug for funktionen)

Så du skal omdefinere dit skema for at håndtere dette, det kan være sådan her

db.test.insert({"person" : [ { "id":1, "details" : { "name" : "Aswini", "Age" : 10 }}]})
db.test.insert({"person" : [ { "id":2, "details" : { "name" : "Mahesh", "Age" : 11}}]})

db.test.find({"person.id":1},{'person.details':1})


  1. Django + Pymongo oprettelse af kontobekræftelseslink

  2. Lav dynamisk forespørgsel med Mongoose

  3. Hvordan kontrollerer jeg i Mongodb, om alle dokumenterne er unikke for en værdi?

  4. pymongo:navnet 'ISODate' er ikke defineret