ডেট ফরম্যাটিং: $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 দেখানোর জন্য খুব উপযোগী।