Jeśli dobrze rozumiem, chcesz usunąć pierwszy i ostatni element tablicy, jeśli rozmiar tablicy jest większy niż 3. Możesz to zrobić za pomocą zapytania findAndModify. W powłoce mongo użyjesz tego polecenia:
db.collection.findAndModify({
query: { $where: "this.time.length > 3" },
update: { $pop: {time: 1}, $pop: {time: -1} },
new: true
});
Spowoduje to znalezienie dokumentu w Twojej kolekcji, który pasuje do klauzuli $where. Pole $where umożliwia określenie dowolnej poprawnej metody JavaScript. Pamiętaj, że aktualizacja dotyczy tylko pierwszego dopasowanego dokumentu.
Warto również zapoznać się z następującymi dokumentami:
- http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D więcej informacji na temat klauzuli $where.
- http://www.mongodb.org/display/DOCS /Aktualizacja#Aktualizacja-%24pop więcej o $pop.
- http://www.mongodb.org/display/DOCS/findAndModify+ Polecenie aby dowiedzieć się więcej findAndModify.