কম্পিউটার টিউটোরিয়াল

MongoDB শেলে ডেট ফরম্যাট করার পদ্ধতি


ডেট ফরম্যাটিং: $dateToString

MongoDB-এ ডেট অবজেক্টকে পঠনীয় স্ট্রিং ফরম্যাটে রূপান্তর করতে অ্যাগ্রিগেশন পাইপলাইনে $dateToString অপারেটর ব্যবহার করা হয়।

নমুনা ডেটা তৈরি

> db.demo480.insertOne({ id: 1, "DueDate": new ISODate("2020-01-10") })
> db.demo480.insertOne({ id: 1, "DueDate": new ISODate("2017-12-21") })
> db.demo480.insertOne({ id: 1, "DueDate": new ISODate("2019-10-12") })
> db.demo480.insertOne({ id: 1, "DueDate": new ISODate("2019-12-01") })

সমস্ত ডকুমেন্ট দেখানো

> db.demo480.find()

আউটপুট:

{ "_id": ObjectId("..."), "id": 1, "DueDate": ISODate("2020-01-10T00:00:00Z") }
{ "_id": ObjectId("..."), "id": 1, "DueDate": ISODate("2017-12-21T00:00:00Z") }
{ "_id": ObjectId("..."), "id": 1, "DueDate": ISODate("2019-10-12T00:00:00Z") }
{ "_id": ObjectId("..."), "id": 1, "DueDate": ISODate("2019-12-01T00:00:00Z") }

ডেট ফরম্যাট করার কোয়েরি (সর্টসহ)

> db.demo480.aggregate([
    { $match: { "id": 1 } },
    { $sort: { "DueDate": -1 } },
    { $project: {
        _id: 0,
        DueDate: {
            $dateToString: { format: "%Y-%m-%d %H-%M", date: "$DueDate" }
        }
    }}
])

ফলাফল:

{ "DueDate": "2020-01-10 00-00" }
{ "DueDate": "2019-12-01 00-00" }
{ "DueDate": "2019-10-12 00-00" }
{ "DueDate": "2017-12-21 00-00" }

ব্যাখ্যা

  • $dateToString: ডেটকে স্ট্রিং-এ রূপান্তর করে
  • ফরম্যাট স্পেসিফায়ার:
    • %Y - ৪ ডিজিট বছর
    • %m - ২ ডিজিট মাস (০১-১২)
    • %d - ২ ডিজিট দিন (০১-৩১)
    • %H - ঘণ্টা (০০-২৩)
    • %M - মিনিট (০০-৫৯)
    • %S - সেকেন্ড (০০-৫৯)
    • %L - মিলিসেকেন্ড (০০০-৯৯৯)
  • $sort: { DueDate: -1 }: নতুন ডেটা আগে দেখানোর জন্য
  • timezone অপশন দিয়ে টাইমজোন নির্দিষ্ট করা যায় (ডিফল্ট UTC)

রিপোর্টিং, এক্সপোর্ট, বা UI দেখানোর জন্য খুব উপযোগী।

  1. MongoDB-তে ডেটা ইনসার্ট করার পদ্ধতি

  2. MongoDB-এ নির্দিষ্ট ডেট ফরম্যাটে কোয়েরি ফিল্টার করা

  3. MongoDB-তে ডেট ফরম্যাট পরিবর্তন

  4. MySQL-এ UNIX_TIMESTAMP এবং STR_TO_DATE ব্যবহার করে ডেটা ফরম্যাট থেকে নümerিক মান বের করা