MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मोंगोडब ऑब्जेक्ट आईडी निर्माण समय के लिए उपयोग करता है

मुझे लगता है कि मोंगोडीबी ऑब्जेक्ट आईडी में टाइमस्टैम्प होता है, अगर आप ऑब्जेक्ट आईडी द्वारा सॉर्ट करेंगे तो आप 'बनाई गई तारीख' के आधार पर सॉर्ट कर सकते हैं:

items.find.sort( [['_id', -1]] ) // get all items desc by created date.

और यदि आप पिछले 30 निर्मित आइटम चाहते हैं तो आप निम्न क्वेरी का उपयोग कर सकते हैं:

items.find.sort( [['_id', -1]] ).limit(30) // get last 30 createad items 

मुझे वास्तव में यकीन नहीं है, मुझे लगता है कि _id द्वारा ऑर्डर करना ऊपर वर्णित अनुसार काम करना चाहिए। मैं बाद में कुछ परीक्षण बनाऊंगा।

अपडेट करें:

हा वोह तो है। यदि आप _id द्वारा आदेश देते हैं तो आप स्वचालित रूप से _id निर्मित तिथि तक आदेश देंगे। मैंने सी # में छोटा परीक्षण किया है, एमबी इसमें रुचि रखने वाले किसी व्यक्ति को:

  public class Item
  {
    [BsonId]
    public ObjectId Id { get; set; }

    public DateTime CreatedDate { get; set; }

    public int Index { get; set; }
  }



 [TestMethod]
 public void IdSortingTest()
 {
   var server = MongoServer.Create("mongodb://localhost:27020");
   var database = server.GetDatabase("tesdb");

   var collection = database.GetCollection("idSortTest");
   collection.RemoveAll();

   for (int i = 0; i <= 500; i++)
   {
     collection.Insert(new Item() { 
             Id = ObjectId.GenerateNewId(), 
             CreatedDate = DateTime.Now, 
             Index = i });
   }

   var cursor = collection.FindAllAs<Item>();
   cursor.SetSortOrder(SortBy.Descending("_id"));
   var itemsOrderedById = cursor.ToList();

   var cursor2 = collection.FindAllAs<Item>();
   cursor2.SetSortOrder(SortBy.Descending("CreatedDate"));
   var itemsOrderedCreatedDate = cursor.ToList();

   for (int i = 0; i <= 500; i++)
   {
     Assert.AreEqual(itemsOrderedById[i].Index, itemsOrderedCreatedDate[i].Index);
   }
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. सरणी mongodb की लंबाई कैसे ज्ञात करें

  2. स्प्रिंग बूट मैसकल और मोंगोडीबी को जोड़ता है

  3. सबसे लोकप्रिय ओपन सोर्स डेटाबेस को स्वचालित और प्रबंधित करने की कला को पूर्ण करना:2017 @ Manynines

  4. Ubuntu पर MongoDB सामुदायिक संस्करण कैसे स्थापित करें

  5. मोंगोडब में संग्रहीत फ़ंक्शन को कॉल करें