यदि आपके पास स्ट्रिंग के रूप में संग्रहीत तिथियों के साथ एक MongoDB संग्रह है, तो यदि आवश्यक हो तो आप उन्हें दिनांक बीएसओएन प्रकार में परिवर्तित कर सकते हैं।
स्ट्रिंग को MongoDB में दिनांक में बदलने के तीन तरीके नीचे दिए गए हैं।
नमूना डेटा
इस आलेख के उदाहरण dogs
. नामक संग्रह में निम्नलिखित दस्तावेज़ का उपयोग करते हैं :
{ "_id" : 1, "name" : "Fetch", "born" : "2021-01-03T23:30:15.123" }
हम देख सकते हैं कि born
फ़ील्ड में एक तिथि होती है, लेकिन उस तिथि को एक स्ट्रिंग के रूप में संग्रहीत किया जाता है।
हम उस स्ट्रिंग को दिनांक में बदलने के लिए निम्नलिखित एकत्रीकरण पाइपलाइन ऑपरेटरों का उपयोग कर सकते हैं।
$dateFromString
संचालिका
$dateFromString
एकत्रीकरण पाइपलाइन ऑपरेटर को विशेष रूप से एक तारीख को एक स्ट्रिंग में बदलने के लिए डिज़ाइन किया गया था।
इसके लिए एक dateString
की आवश्यकता होती है तर्क, वह स्ट्रिंग है जिसे आप एक तिथि में बदलना चाहते हैं।
उपरोक्त संग्रह में स्ट्रिंग को एक तिथि में बदलने का एक उदाहरण यहां दिया गया है:
db.dogs.aggregate([
{
$project: {
born: {
$dateFromString: {
dateString: '$born'
}
}
}
}
])
परिणाम:
{ "_id" : 1, "born" : ISODate("2021-01-03T23:30:15.123Z") }
हम देख सकते हैं कि तिथि अब ISODate सहायक में लिपटी हुई है, जिसका अर्थ है कि यह एक दिनांक वस्तु है।
$dateFromString
ऑपरेटर कुछ अन्य तर्क स्वीकार करता है, जो सभी वैकल्पिक हैं। MongoDB देखें $dateFromString
अधिक जानकारी और उदाहरणों के लिए।
$toDate
संचालिका
$toDate
एकत्रीकरण पाइपलाइन ऑपरेटर एक मान को एक तिथि में परिवर्तित करता है। मान किसी भी प्रकार का हो सकता है जिसे दिनांक में परिवर्तित किया जा सकता है, जो मूल रूप से संख्याएं, तार और ऑब्जेक्ट आईडी हैं।
यह लेख स्ट्रिंग्स को तिथियों में बदलने के बारे में है, और इसलिए यहां $toDate
का उपयोग करने का एक उदाहरण दिया गया है ऐसा करने के लिए:
db.dogs.aggregate([
{
$project: {
"born": {
$toDate: "$born"
}
}
}
])
परिणाम:
{ "_id" : 1, "born" : ISODate("2021-01-03T23:30:15.123Z") }
मोंगो देखें $toDate
अधिक जानकारी और उदाहरणों के लिए।
$convert
संचालिका
$convert
ऑपरेटर को विशेष रूप से एक प्रकार और दूसरे के बीच कनवर्ट करने के लिए डिज़ाइन किया गया था।
input
पैरामीटर उस फ़ील्ड को निर्दिष्ट करता है जिसे आप कनवर्ट करना चाहते हैं, और to
पैरामीटर उस प्रकार को निर्दिष्ट करता है जिसमें आप इसे रूपांतरित करना चाहते हैं।
उदाहरण:
db.cats.aggregate(
[
{
$project:
{
result:
{
$convert: {
input: "$born",
to: "date",
onError: "An error occurred",
onNull: "Input was null or empty"
}
}
}
}
]
)
परिणाम:
{ "_id" : 1, "result" : ISODate("2021-01-03T23:30:15.123Z") }
आपने देखा होगा कि $convert
ऑपरेटर onError
को भी स्वीकार करता है और onNull
पैरामीटर, जो हमें त्रुटि या null
. की स्थिति में उपयोग करने के लिए एक संदेश प्रदान करने की अनुमति देता है मूल्य। यह संपूर्ण एकत्रीकरण संचालन को रुकने से रोकता है, और यह आउटपुट दस्तावेज़ के भीतर एक उपयोगकर्ता के अनुकूल त्रुटि संदेश की अनुमति देता है।
MongoDB देखें $convert
अधिक जानकारी और उदाहरणों के लिए।