MongoDB की 2.4 रिलीज़ यहां एक और विकल्प प्रदान करती है, जो कि सरणी फ़ील्ड को क्रमबद्ध क्रम में रखना है क्योंकि आप इसे $sort
संशोधक।
db.collection.update({_id: document_id}, {
$push: {
myarray: {
$each: [{timestamp: 456, x: 1}, {timestamp: 123, x: 2}, ...],
$sort: {timestamp: 1}
}
}
});
इसका परिणाम myarray
. के तत्वों में होगा संग्रहीत किए जाने वाले अद्यतन दस्तावेज़ का फ़ील्ड आरोही timestamp
. द्वारा क्रमबद्ध किया जाना है ।
यदि आप मौजूदा तत्वों को बिना कोई नया जोड़े क्रमित करना चाहते हैं, तो $each: []
का उपयोग करें :
db.collection.update({_id: document_id}, {
$push: {
myarray: {
$each: [],
$sort: {timestamp: 1}
}
}
});