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

MongoDB-তে নির্দিষ্ট মাস বা বছর কোয়েরি করার পদ্ধতি (তারিখ ছাড়া)


MongoDB-তে অগ리게শন এবং $month অপারেটর ব্যবহার করে নির্দিষ্ট মাস/বর্ষ কোয়েরি করা

MongoDB-তে ISODate ফিল্ড থেকে শুধু মাস বা বছর এক্সট্র্যাক্ট করে কোয়েরি করতে অগ리게শন ফ্রেমওয়ার্কের $month বা $year প্রজেকশন অপারেটর ব্যবহার করা হয়।

ধাপ ১: ডকুমেন্টসহ কালেকশন তৈরি করুন

> db.specificMonthDemo.insertOne({"StudentName":"Larry","StudentDateOfBirth":new ISODate('1995-01-12')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb9a9ca8f1d1b97daf71819") }
> db.specificMonthDemo.insertOne({"StudentName":"Chris","StudentDateOfBirth":new ISODate('1999-12-31')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb9a9db8f1d1b97daf7181a") }
> db.specificMonthDemo.insertOne({"StudentName":"David","StudentDateOfBirth":new ISODate('2000-06-01')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cb9a9ee8f1d1b97daf7181b") }

ধাপ ২: সব ডকুমেন্ট প্রদর্শন করুন

> db.specificMonthDemo.find().pretty();

আউটপুট:

{
  "_id" : ObjectId("5cb9a9ca8f1d1b97daf71819"),
  "StudentName" : "Larry",
  "StudentDateOfBirth" : ISODate("1995-01-12T00:00:00Z")
}
{
  "_id" : ObjectId("5cb9a9db8f1d1b97daf7181a"),
  "StudentName" : "Chris",
  "StudentDateOfBirth" : ISODate("1999-12-31T00:00:00Z")
}
{
  "_id" : ObjectId("5cb9a9ee8f1d1b97daf7181b"),
  "StudentName" : "David",
  "StudentDateOfBirth" : ISODate("2000-06-01T00:00:00Z")
}

ধাপ ৩: নির্দিষ্ট মাস (জানুয়ারি = ১) কোয়েরি করুন

> db.specificMonthDemo.aggregate([
  {$project: {
    StudentName: 1,
    StudentDateOfBirth: {$month: '$StudentDateOfBirth'}
  }},
  {$match: {StudentDateOfBirth: 1}}
]).pretty();

ফলাফল:

{
  "_id" : ObjectId("5cb9a9ca8f1d1b97daf71819"),
  "StudentName" : "Larry",
  "StudentDateOfBirth" : 1
}

ব্যাখ্যা:

  • $project স্টেজে $month: '$StudentDateOfBirth' ব্যবহার করে ডেট অবজেক্ট থেকে মাস নম্বর (১-১২) এক্সট্র্যাক্ট করা হয়েছে
  • $match স্টেজে StudentDateOfBirth: 1 দিয়ে জানুয়ারি মাসের ডকুমেন্ট ফিল্টার করা হয়েছে
  • ফলাফলে শুধু Larry (জন্ম তারিখ ১৯৯৫-০১-১২) পাওয়া গেছে

অন্যান্য ডেট অপারেটর:

  • $year - বছর (যেমন ১৯৯৫, ২০০০)
  • $dayOfMonth - তারিখ (১-৩১)
  • $dayOfWeek - সপ্তাহের দিন (১=রবিবার, ৭=শনিবার)
  • $hour, $minute, $second - সময়ের উপাদান

  1. MongoDB-এ ISODate দিয়ে তারিখ কোয়েরি করার পদ্ধতি

  2. MongoDB-এ তারিখ ভিত্তিক কোয়েরি ফেরত দেওয়া

  3. MongoDB-এ নেস্টেড ফিল্ড কোয়েরি করা (ডট নোটেশন)

  4. MongoDB-এ ISODate থেকে ডেটা কম্পোনেন্ট বের করা