मोंगोडीबी में दिनांक बीएसओएन प्रकार है जो आपको तिथियों को तिथियों के रूप में संग्रहीत करने की अनुमति देता है।
आप तारीखों को स्ट्रिंग्स के रूप में भी स्टोर कर सकते हैं, यदि आपको इसकी आवश्यकता है।
इसे एक कदम आगे बढ़ाते हुए, आप एक तिथि को एक स्ट्रिंग में भी बदल सकते हैं।
यह लेख MongoDB में दिनांक को स्ट्रिंग में बदलने के तीन तरीके प्रस्तुत करता है।
नमूना डेटा
इस आलेख के उदाहरण cats
. नामक संग्रह में निम्नलिखित दस्तावेज़ का उपयोग करते हैं :
{
"_id" : 1,
"name" : "Scratch",
"born" : ISODate("2021-01-03T23:30:15.123Z")
}
ध्यान दें कि born
फ़ील्ड एक दिनांक है। निम्नलिखित उदाहरण इस फ़ील्ड को एक स्ट्रिंग में बदलने के लिए विभिन्न एकत्रीकरण पाइपलाइन ऑपरेटरों का उपयोग करते हैं।
$dateToString
संचालिका
$dateToString
एग्रीगेशन पाइपलाइन ऑपरेटर शुरू करने के लिए सबसे स्पष्ट जगह है।
जैसा कि इसके नाम का तात्पर्य है, इसका एकमात्र उद्देश्य एक तिथि को एक स्ट्रिंग में परिवर्तित करना है (और परिणाम वापस करना है)।
उदाहरण:
db.cats.aggregate(
[
{
$project: {
_id: 0,
dateString: { $dateToString: { format: "%Y-%m-%dT%H:%M:%S.%LZ", date: "$born" } }
}
}
]
)
परिणाम:
{ "dateString" : "2021-01-03T23:30:15.123Z" }
यहां, मैंने परिणामी स्ट्रिंग के प्रारूप को निर्दिष्ट करने के लिए एक प्रारूप स्ट्रिंग प्रदान की है। इस मामले में, मैंने %Y-%m-%dT%H:%M:%S.%LZ
का उपयोग किया , जो डिफ़ॉल्ट प्रारूप है। यदि मैंने कोई प्रारूप निर्दिष्ट नहीं किया होता, तो यह वह प्रारूप होता जिसका वह उपयोग करता।
आप अपनी परिणामी स्ट्रिंग के अनुरूप उन प्रारूप विनिर्देशों को इधर-उधर कर सकते हैं।
उदाहरण के लिए, हम यह कर सकते हैं:
db.cats.aggregate( [ { $project: { _id: 0, dateString: { $dateToString: { format: "%d/%m/%Y", date: "$born" } } } } ] )
परिणाम:
{ "dateString" : "03/01/2021" }
MongoDB देखें $dateToString
इस ऑपरेटर के बारे में अधिक जानकारी के लिए।
द $toString
संचालिका
$toString
एकत्रीकरण पाइपलाइन ऑपरेटर $dateToString
. के समान है , सिवाय इसके कि यह विभिन्न प्रकारों से परिवर्तित हो सकता है - यह केवल एक तिथि से परिवर्तित करने तक सीमित नहीं है।
लेकिन हमारे उद्देश्यों के लिए, हम एक तिथि से परिवर्तित कर रहे हैं।
उदाहरण:
db.cats.aggregate(
[
{
$project: {
_id: 0,
dateString: { $toString: "$born" }
}
}
]
)
परिणाम:
{ "dateString" : "2021-01-03T23:30:15.123Z" }
यह ऑपरेटर हमें एक प्रारूप निर्दिष्ट करने का विकल्प नहीं देता है, इसलिए प्रारूप को वैसे ही वापस कर दिया जाता है।
MongoDB देखें $toString
अधिक जानकारी और उदाहरणों के लिए।
$convert
संचालिका
$convert
ऑपरेटर को विशेष रूप से एक प्रकार और दूसरे के बीच कनवर्ट करने के लिए डिज़ाइन किया गया था।
input
पैरामीटर उस फ़ील्ड को निर्दिष्ट करता है जिसे आप कनवर्ट करना चाहते हैं, और to
पैरामीटर उस प्रकार को निर्दिष्ट करता है जिसमें आप इसे रूपांतरित करना चाहते हैं।
उदाहरण:
db.cats.aggregate(
[
{
$project:
{
result:
{
$convert: {
input: "$born",
to: "string",
onError: "An error occurred",
onNull: "Input was null or empty"
}
}
}
}
]
)
परिणाम:
{ "_id" : 1, "result" : "2021-01-03T23:30:15.123Z" }
ध्यान दें कि $convert
ऑपरेटर onError
को भी स्वीकार करता है और onNull
पैरामीटर, जो हमें किसी त्रुटि या null
. की स्थिति में उपयोग करने के लिए एक संदेश प्रदान करने की अनुमति देता है मूल्य। यह संपूर्ण एकत्रीकरण संचालन को रुकने से रोकता है, और यह आउटपुट दस्तावेज़ के भीतर एक उपयोगकर्ता के अनुकूल त्रुटि संदेश की अनुमति देता है।
MongoDB देखें $convert
अधिक जानकारी और उदाहरणों के लिए।