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

MongoDB অগ্রেশন পাইপলাইনে $ifNull ব্যবহার

MongoDB-এ $ifNull অপারেটর: NULL হ্যান্ডলিং

$ifNull অপারেটর একটি এক্সপ্রেশন ইভ্যালুয়েট করে এবং যদি মান null বা অনুপস্থিত হয়, তবে ডিফল্ট মান রিটার্ন করে। সিনট্যাক্স: { $ifNull: [ , ] }।

উদাহরণ: NULL মান সহ ডকুমেন্ট তৈরি

> db.demo372.insertOne({"FirstName":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e591aea2ae06a1609a00af6") }
> db.demo372.insertOne({"FirstName":null});
{ "acknowledged" : true, "insertedId" : ObjectId("5e591aef2ae06a1609a00af7") }
> db.demo372.insertOne({"FirstName":"David"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e591af42ae06a1609a00af8") }
> db.demo372.insertOne({"FirstName":null});
{ "acknowledged" : true, "insertedId" : ObjectId("5e591afb2ae06a1609a00af9") }

সমস্ত ডকুমেন্ট

> db.demo372.find();
{ "_id" : ObjectId("5e591aea2ae06a1609a00af6"), "FirstName" : "Chris" }
{ "_id" : ObjectId("5e591aef2ae06a1609a00af7"), "FirstName" : null }
{ "_id" : ObjectId("5e591af42ae06a1609a00af8"), "FirstName" : "David" }
{ "_id" : ObjectId("5e591afb2ae06a1609a00af9"), "FirstName" : null }

অগ্রেশন কুয়েরি: $ifNull ব্যবহার করে NULL প্রতিস্থাপন

> db.demo372.aggregate([
    { $project: {
        FirstName: { $ifNull: [ "$FirstName", "NOT PROVIDED" ] }
    }}
])

ফলাফল

{ "_id" : ObjectId("5e591aea2ae06a1609a00af6"), "FirstName" : "Chris" }
{ "_id" : ObjectId("5e591aef2ae06a1609a00af7"), "FirstName" : "NOT PROVIDED" }
{ "_id" : ObjectId("5e591af42ae06a1609a00af8"), "FirstName" : "David" }
{ "_id" : ObjectId("5e591afb2ae06a1609a00af9"), "FirstName" : "NOT PROVIDED" }

ব্যাখ্যা

  • $project: আউটপুট ফিল্ড ডিফাইন করতে ব্যবহৃত।
  • $ifNull: [ "$FirstName", "NOT PROVIDED" ]: FirstName যদি null বা মিসিং হয়, তবে "NOT PROVIDED" রিটার্ন করবে।
  • অন্য ফিল্ড রাখতে: _id: 1, FirstName: { $ifNull: [...] }।

ব্যবহার ক্ষেত্র

  • রিপোর্টিং-এ খালি ফিল্ডে ডিফল্ট মান দেখানোর জন্য।
  • ডেটা ক্লিনিং বা ট্রান্সফরমেশনে।
  • ফ্রন্টএন্ডে "N/A" দেখানোর জন্য।
  1. MongoDB-এ $type অপারেটর ব্যবহার করে টাইপ ভিত্তিক কোয়েরি

  2. MongoDB $match ব্যবহার করে ডেট ম্যাচ করা

  3. MongoDB-এ স্টোরড জাভাস্ক্রিপ্ট ফাংশন ব্যবহার করা

  4. MongoDB এগ্রিগেশন: একাধিক ফিল্ড দিয়ে কাউন্ট করা