MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mise à jour du tableau avec push et slice

Vous pouvez ajouter le score avec cette déclaration :

db.userscores.update(
  { "name": "John Doe", "levels.level": 1 }, 
  { "$push": { "levels.$.hiscores": 75 } } )

Cela ne sera pas triez le tableau car cela n'est pris en charge que si vos éléments de tableau sont des documents.

Dans MongoDB 2.6, vous pouvez également utiliser le tri pour les tableaux non documentaires :

db.userscores.update(
  { "name": "John Doe", "levels.level": 1 }, 
  { "$push": { "levels.$.hiscores": { $each: [ 75 ], $sort: -1, $slice: 3 } } } )