Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB: "String से Date टाइप में कनवर्ट करने में विफल" एरर कैसे ठीक करें?

इसे ठीक करने के लिए MongoDB aggregate() में $dateFromString का उपयोग करें। $dateFromString डेट/टाइम स्ट्रिंग को डेट ऑब्जेक्ट में कनवर्ट करता है।

नमूना डेटा बनाना (स्ट्रिंग फॉर्मेट में तारीखें)

> db.demo619.insertOne({"DueDate":"10-10-2020"});
> db.demo619.insertOne({"DueDate":"12-01-2019"});
> db.demo619.insertOne({"DueDate":"28-10-2010"});

दस्तावेज़ देखना

> db.demo619.find();
{ "DueDate" : "10-10-2020" }
{ "DueDate" : "12-01-2019" }
{ "DueDate" : "28-10-2010" }

स्ट्रिंग को डेट ऑब्जेक्ट में कनवर्ट करने की क्वेरी

> db.demo619.aggregate( [
  { $project: {
    DueDate: {
      $dateFromString: {
        dateString: '$DueDate',
        timezone: 'America/New_York'
      }
    }
  }}
] )

परिणाम (ISODate ऑब्जेक्ट्स):

{ "DueDate" : ISODate("2020-10-10T04:00:00Z") }
{ "DueDate" : ISODate("2019-01-12T05:00:00Z") }
{ "DueDate" : ISODate("2010-10-28T04:00:00Z") }

नोट: $dateFromString डिफ़ॉल्ट रूप से "YYYY-MM-DD" फॉर्मेट अपेक्षा करता है। यदि आपका फॉर्मेट अलग है (जैसे "DD-MM-YYYY"), तो आपको पहले स्ट्रिंग को पार्स/रीफॉर्मेट करना होगा या format पैरामीटर का उपयोग करना होगा (MongoDB 4.0+ में उपलब्ध)।

  1. - MySQL में डेटा टाइप को DATE से DATETIME में कैसे बदलें?

    डेटा टाइप को DATE से DATETIME में बदलने के लिए, ALTER कमांड का उपयोग करें। ALTER TABLE yourTableName CHANGE yourColumnName yourColumnName DATETIME; आइए पहले एक टेबल बनाते हैं: CREATE TABLE DemoTable ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, LoginDate DATE ); टेबल में कुछ रिकॉर्ड डालें:

  1. - MySQL में SUBSTRING_INDEX से स्ट्रिंग से दिनांक निकालें

    MySQL में SUBSTRING_INDEX() फ़ंक्शन का उपयोग करके स्ट्रिंग के अंतिम भाग से दिनांक निकाल सकते हैं जब दिनांक एक ज्ञात विभाजक के बाद आता है। सिंटैक्स SUBSTRING_INDEX(SUBSTRING_INDEX(स्ट्रिंग, विभाजक, -1), विभाजक, 1) उदाहरण: लेबल.दिनांक प्रारूप से दिनांक निकालना 1. टेबल बनाएं ); 2. डेटा डालें INSE

  1. - Java में String को Date में कैसे बदलें?

    मान लीजिए निम्नलिखित हमारे स्ट्रिंग्स हैं: String date1 = 11/10/2018; String date2 = 15-Mar-2019 21:11:35; अब, ऊपर दिए गए स्ट्रिंग्स को तारीखों में बदलें: SimpleDateFormat dateFormat1 = new SimpleDateFormat(dd/MM/yyyy); SimpleDateFormat dateFormat2 = new SimpleDateFormat(dd-MMM-yyyy HH:mm:ss); D