Tengo el siguiente objeto en mi base de datos mongo llamado música.
Quiero actualizar donde el género es de Grunge
El nombre de la banda es el Nirvana
El nombre del álbum es No importa
El orden de las pistas es 1
Actualización de MongoDB Deep Array
y cambiar el nombre de la pista de "Smells Like Teen Spirit ! ".
He intentado jugar con el operador de posición, pero no puedo resolver esto.
{
genre : "Grunge",
bands : [ {
name : "Nirvana",
albums : [ {
name : "Nevermind",
tracks : [ {
name : "Smell Like Teen Spirit",
order : 1,
duration : 301
},
{
name : "In Bloom",
order : 2,
duration : 254
} ]
},
{
name : "In Utero",
tracks : [ {
name : "Server the Servants",
order : 1,
duration : 216
},
{
name : "Scentless Apprentice",
order : 2,
duration : 254
} ]
} ]
},
{
name : "Karma++ : A Nirvina Tribute Band",
albums : [ {
name : "Nevermind",
tracks : [ {
name : "Smell Like Teen Spirit",
order : 1,
duration : 301
},
{
name : "In Bloom",
order : 2,
duration : 254
} ]
},
{
name : "In Utero",
tracks : [ {
name : "Server the Servants",
order : 1,
duration : 216
},
{
name : "Scentless Apprentice",
order : 2,
duration : 254
} ]
} ]
} ]
}
¿Ha considerado cambiar un poco el diseño de su base de datos? Tendría más sentido si tu documento fuera una "banda" con un atributo de "género", y también facilitaría mucho esta consulta en particular. – Russell
Este fue solo el ejemplo más rápido que pude pensar. Si tuviera que hacer una base de datos de "música", probablemente establecería canciones como el elemento raíz con artistas, álbumes y géneros como matrices; permitiendo cosas como David Bowie/Queen's 'Under Pressure' (2 artistas, álbumes múltiples). – JWally