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

mongoDB:$inc di un documento inesistente in un array

Non puoi ottenere ciò che desideri con un solo passaggio utilizzando questo schema.

Potresti farlo comunque se hai usato tag_name come nome della chiave invece di usare ratings lì, ma potresti avere un problema diverso durante la query.

Se il valore tag_name fosse il nome del campo (sostituendo le valutazioni) avresti {"dubstep":{"0":1}} invece di { "ratings" : {"0" : 1},"tag_name" : "dubstep"} che puoi aggiornare dinamicamente nel modo desiderato. Tieni presente che questo schema renderà più difficile eseguire query:devi sapere quali sono le valutazioni in anticipo per poter eseguire query per nome chiave.