Si je vous comprends bien, vous souhaitez supprimer les premier et dernier éléments du tableau si la taille du tableau est supérieure à 3. Vous pouvez le faire en utilisant la requête findAndModify. Dans mongo shell, vous utiliseriez cette commande :
db.collection.findAndModify({
query: { $where: "this.time.length > 3" },
update: { $pop: {time: 1}, $pop: {time: -1} },
new: true
});
Cela trouverait le document dans votre collection qui correspond à la clause $where. Le champ $where vous permet de spécifier n'importe quelle méthode javascript valide. Veuillez noter qu'il applique la mise à jour uniquement au premier document correspondant.
Vous pouvez également consulter les documents suivants :
- http ://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D pour en savoir plus sur la clause $where.
- http://www.mongodb.org/display/DOCS /Mise à jour#Mise à jour-%24pop pour en savoir plus sur $pop.
- http://www.mongodb.org/display/DOCS/findAndModify+ Commande pour en savoir plussur findAndModify.