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

MongoDB में एक तिथि से सप्ताह प्राप्त करने के 3 तरीके

MongoDB किसी तिथि से दिनांक भागों को निकालने के लिए विभिन्न विकल्प प्रदान करता है।

यह लेख MongoDB में किसी तिथि से सप्ताह के हिस्से को वापस करने के 3 तरीके प्रस्तुत करता है।

नमूना डेटा

मान लीजिए हमारे पास cats . नामक संग्रह है निम्नलिखित दस्तावेजों के साथ:

{ "_id" : 1, "name" : "Scratch", "born" : ISODate("2021-01-03T23:30:15.123Z") }
{ "_id" : 2, "name" : "Meow", "born" : ISODate("2019-12-08T04:00:12Z") }
{ "_id" : 3, "name" : "Fluffy", "born" : ISODate("2020-09-24T10:30:00Z") }

निम्नलिखित उदाहरण born . से सप्ताह के हिस्से को वापस करने के लिए विभिन्न विकल्पों को प्रदर्शित करते हैं उन दस्तावेज़ों का क्षेत्र।

$week संचालिका

$week ऑपरेटर वर्ष के सप्ताह को 0 और 53 के बीच की संख्या के रूप में दिनांक के लिए लौटाता है।

इसलिए हम born . से सप्ताह वापस करने के लिए निम्नलिखित कोड चला सकते हैं उपरोक्त दस्तावेज़ में फ़ील्ड।

db.cats.aggregate(
  [
    {
      $project:
        {
          _id: 0,
          birthWeek: { $week: "$born" }
        }
    }
  ]
)

परिणाम:

{ "birthWeek" : 1 }
{ "birthWeek" : 49 }
{ "birthWeek" : 38 }

$week . का उपयोग करते समय आप समय क्षेत्र भी निर्दिष्ट कर सकते हैं ऑपरेटर।

MongoDB देखें $week अधिक जानकारी और उदाहरणों के लिए।

$dateToString संचालिका

$dateToString ऑपरेटर उपयोगकर्ता द्वारा निर्दिष्ट प्रारूप के अनुसार दिनांक ऑब्जेक्ट को स्ट्रिंग में परिवर्तित करता है। इसलिए उपयोगकर्ता निर्दिष्ट कर सकता है कि यदि आवश्यक हो तो केवल सप्ताह का हिस्सा लौटाया जाता है।

प्रत्येक दिनांक भाग के लिए प्रारूप विनिर्देशक हैं। दिनांक के सप्ताह भाग के संबंध में, %U प्रारूप विनिर्देशक वर्ष का सप्ताह लौटाता है, और %V प्रारूप विनिर्देशक वर्ष के सप्ताह को ISO 8601 प्रारूप में लौटाता है।

उदाहरण:

db.cats.aggregate(
   [
     {
       $project: {
         _id: 0,
          birthWeek: { $dateToString: { format: "%U", date: "$born" } },
          birthWeekISO: { $dateToString: { format: "%V", date: "$born" } }
       }
     }
   ]
)

परिणाम:

{ "birthWeek" : "01", "birthWeekISO" : "53" }
{ "birthWeek" : "49", "birthWeekISO" : "49" }
{ "birthWeek" : "38", "birthWeekISO" : "39" }

MongoDB देखें $dateToString अधिक जानकारी और उदाहरणों के लिए।

MongoDB $dateToString भी देखें प्रारूप विनिर्देशकों की सूची के लिए प्रारूप विनिर्देशक जिनका उपयोग इस ऑपरेटर के साथ किया जा सकता है।

$isoWeek संचालिका

यदि आपको सप्ताह को ISO 8601 प्रारूप में वापस करना है, तो $isoWeek . का उपयोग करें . ISO 8601 वर्ष 1 सप्ताह के सोमवार से शुरू होता है और अंतिम सप्ताह के रविवार को समाप्त होता है।

उदाहरण:

db.cats.aggregate(
  [
    {
      $project:
        {
          _id: 0,
          birthIsoWeek: { $isoWeek: "$born" }
        }
    }
  ]
)

परिणाम:

{ "birthIsoWeek" : 53 }
{ "birthIsoWeek" : 49 }
{ "birthIsoWeek" : 39 }

यह परिणाम उस समय से भिन्न है जब हमने $week . का उपयोग किया था ऑपरेटर।

यहां एक उदाहरण दिया गया है जो अंतर दिखाता है।

db.cats.aggregate(
  [
    {
      $project:
        {
          _id: 0,
          birthWeek: { $week: "$born" },
          birthIsoWeek: { $isoWeek: "$born" }
        }
    }
  ]
)

परिणाम:

{ "birthWeek" : 1, "birthIsoWeek" : 53 }
{ "birthWeek" : 49, "birthIsoWeek" : 49 }
{ "birthWeek" : 38, "birthIsoWeek" : 39 }

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में श्रेणी प्रश्नों का उपयोग करके पृष्ठ पर अंक लगाना कैसे करें?

  2. MongoClient v3.0 का उपयोग करते समय db.Collection एक फ़ंक्शन नहीं है

  3. मोंगोडीबी क्लाइंट के बारे में आपको जो कुछ पता होना चाहिए

  4. MongoDB:'_id' के बजाय 'id' आउटपुट

  5. दो अलग-अलग संग्रहों में डुप्लिकेट मोंगो ऑब्जेक्ट आईडी उत्पन्न होने की संभावना?