sql >> Database >  >> NoSQL >> MongoDB

Hoe kan ik in MongoDB een document vinden dat is ingesloten?

Dat is het verwachte gedrag.

Als u de afzonderlijke velden van een ingesloten document wilt opvragen, moet u de volgende syntaxis gebruiken - met behulp van de punt (. ) notatie. Beide query's retourneren bijvoorbeeld het document:

db.test.find({"KPOP.SHINee": "Dream Girl"})
db.test.find({"KPOP.SHINee": "Dream Girl", "KPOP.BTS": "Fake Love" })

In de bovenstaande zoekopdrachten kunt u één, twee of alle velden en . specificeren in willekeurige volgorde.

U gebruikt de volgende syntaxis bij het specificeren van het filter voor het geheel ingesloten document:

db.test.find({ KPOP: { SHINee: "Dream Girl", "Girl's Generation": "I Got a Boy", BTS: "Fake Love" } })

Houd er in dit geval rekening mee dat de volgorde van de velden van het ingesloten document moet hetzelfde zijn als dat van het originele document; d.w.z. SHINee , "Girl's Generation" en BTS (binnen de KPOP ). En u moet alle . specificeren de velden van het ingesloten document.



  1. $uitgeschakeld is leeg. U moet een veld als volgt specificeren:{$unset:{<field>:...}}

  2. Wat is het voordeel van het gebruik van de aangepaste backend van Gorilla-sessies?

  3. Fout E QUERY [thread1] SyntaxError:ongeldige eigenschap-id @(shell) met en/of met find()

  4. Hoe te controleren of het geselecteerde e-mailadres en de naam al bestaan ​​in MongoDB