Jika saya memahami Anda dengan benar, Anda ingin menghapus elemen pertama dan terakhir dari array jika ukuran array lebih besar dari 3. Anda dapat melakukannya dengan menggunakan kueri findAndModify. Di mongo shell Anda akan menggunakan perintah ini:
db.collection.findAndModify({
query: { $where: "this.time.length > 3" },
update: { $pop: {time: 1}, $pop: {time: -1} },
new: true
});
Ini akan menemukan dokumen dalam koleksi Anda yang cocok dengan klausa $where. Bidang $where memungkinkan Anda untuk menentukan metode javascript yang valid. Harap diperhatikan bahwa pembaruan hanya berlaku untuk dokumen pertama yang cocok.
Anda mungkin juga ingin melihat dokumen berikut:
- http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D untuk lebih lanjut tentang klausa $where.
- http://www.mongodb.org/display/DOCS /Memperbarui#Memperbarui-%24pop sebelumnya di $pop.
- http://www.mongodb.org/display/DOCS/findAndModify+ Perintah untuk lebih lanjut findAndModify.