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

Aggiornamento dell'array con push and slice

Puoi aggiungere il punteggio con questa affermazione:

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

Questo non ordina l'array poiché è supportato solo se gli elementi dell'array sono documenti.

In MongoDB 2.6 puoi usare l'ordinamento anche per gli array non di documenti:

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