अगर मैं आपको सही ढंग से समझ रहा हूं, तो आप सरणी के पहले और अंतिम तत्वों को हटाना चाहते हैं यदि सरणी का आकार 3 से बड़ा है। आप इसे findAndModify क्वेरी का उपयोग करके कर सकते हैं। मोंगो शेल में आप इस कमांड का उपयोग कर रहे होंगे:
db.collection.findAndModify({
query: { $where: "this.time.length > 3" },
update: { $pop: {time: 1}, $pop: {time: -1} },
new: true
});
यह आपके संग्रह में दस्तावेज़ ढूंढेगा जो $where क्लॉज से मेल खाता है। $जहां फ़ील्ड आपको किसी भी मान्य जावास्क्रिप्ट विधि को निर्दिष्ट करने की अनुमति देता है। कृपया ध्यान दें कि यह अपडेट केवल पहले मिलान वाले दस्तावेज़ पर लागू होता है।
आप निम्न दस्तावेज़ों को भी देखना चाहेंगे:
- http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D $where क्लॉज पर अधिक जानकारी के लिए।
- http://www.mongodb.org/display/DOCS /अपडेट करना#अपडेट करना-%24पॉप $pop पर और अधिक।
- http://www.mongodb.org/display/DOCS/findAndModify+ कमांड और अधिक के लिए ढूंढें और संशोधित करें।