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

In MongoDB, come posso trovare un documento incorporato?

Questo è il comportamento previsto.

Se desideri eseguire una query sui singoli campi di un documento incorporato, devi utilizzare la seguente sintassi:utilizzando il punto (. ) notazione. Ad esempio, entrambe queste query restituiscono il documento:

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

Nelle query precedenti, puoi specificare uno, due o tutti i campi e in qualsiasi ordine.

Utilizzare la seguente sintassi quando si specifica il filtro per l'intero documento incorporato:

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

In questo caso, tieni presente che l'ordine dei campi del documento incorporato deve essere uguale a quello del documento originale; cioè, SHINee , "Girl's Generation" e BTS (all'interno del KPOP ). E devi specificare tutti i campi del documento incorporato.