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

MongoDB-এ শুধু ইন্টিজার টাইপের এজ ফিল্ডवाले ডকুমেন্ট বের করা


বিবিধ টাইপের ফিল্ড থেকে শুধু ইন্টিজার ফিল্টার: $type

MongoDB-এ একটি ফিল্ডে মিশ্র ডেটা টাইপ (স্ট্রিং, ইন্টিজার) থাকলে শুধু ইন্টিজার মানवाले ডকুমেন্ট বের করতে $type অপারেটর ব্যবহার করা হয়।

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

> db.demo470.insertOne({ "Age": 23 })
> db.demo470.insertOne({ "Age": "Unknown" })
> db.demo470.insertOne({ "Age": 24 })
> db.demo470.insertOne({ "Age": "Not provided" })

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

> db.demo470.find()

আউটপুট:

{ "_id": ObjectId("..."), "Age": 23 }
{ "_id": ObjectId("..."), "Age": "Unknown" }
{ "_id": ObjectId("..."), "Age": 24 }
{ "_id": ObjectId("..."), "Age": "Not provided" }

শুধু ইন্টিজার এজ ফিল্টার করার কোয়েরি

> db.demo470.find({ 'Age': { $type: "number" } })

ফলাফল:

{ "_id": ObjectId("..."), "Age": 23 }
{ "_id": ObjectId("..."), "Age": 24 }

ব্যাখ্যা

  • $type: "number": BSON টাইপ "double" (৩২/৬৪ বিট ইন্টিজার এবং ফ্লোট) 매칭 করে
  • BSON টাইপ আলায়স: "int", "long", "double", "decimal" ও "number" (সকল নাম্বার টাইপ)
  • স্ট্রিং মান ("Unknown", "Not provided") ফিল্টার আউট হয়েছে
  • অন্যান্য টাইপ চেক: $type: "string", $type: "objectId", $type: "array", $type: "bool", $type: "date", $type: "null"

ডেটা কোয়ালিটি চেক এবং ক্লিনিংয়ের জন্য খুব উপযোগী।

  1. MongoDB-তে LIMIT ব্যবহার করে কোয়ারি করার পদ্ধতি

  2. MongoDB-এ ডট নোটেশন ব্যবহার করে অ্যারে গ্রুপ করা

  3. MongoDB-তে কেস-ইনসেনসিটিভ (Case-Insensitive) সার্চ করা ($regex)

  4. MySQL-এ ১ সপ্তাহের পুরনো ডেটাইম রেকর্ড পান