একাধিক ফিল্ড এক্সিস্টেন্স চেক: $exists + $and
MongoDB-এ একটি ডকুমেন্টে একাধিক ফিল্ড একসাথে আছে কিনা চেক করতে $and দিয়ে একাধিক $exists কন্ডিশন কম্বাইন করা হয়।
নমুনা ডেটা তৈরি
> db.demo475.insertOne({ "StudentFirstName": "Chris", "StudentAge": 23 })
> db.demo475.insertOne({ "StudentFirstName": "Bob", "StudentAge": 21, "StudentCountryName": "US" })
> db.demo475.insertOne({ "StudentFirstName": "David", "StudentAge": 22 })
সমস্ত ডকুমেন্ট দেখানো
> db.demo475.find()
আউটপুট:
{ "_id": ObjectId("..."), "StudentFirstName": "Chris", "StudentAge": 23 }
{ "_id": ObjectId("..."), "StudentFirstName": "Bob", "StudentAge": 21, "StudentCountryName": "US" }
{ "_id": ObjectId("..."), "StudentFirstName": "David", "StudentAge": 22 }
তিনটি ফিল্ড সবই থাকা ডকুমেন্ট খুঁজে বের করা
> db.demo475.find({
$and: [
{ 'StudentFirstName': { $exists: true } },
{ 'StudentAge': { $exists: true } },
{ 'StudentCountryName': { $exists: true } }
]
})
ফলাফল:
{ "_id": ObjectId("..."), "StudentFirstName": "Bob", "StudentAge": 21, "StudentCountryName": "US" }
ব্যাখ্যা
$exists: true: ফিল্ডটি ডকুমেন্টে আছে (মান null হলেও থাকে)$and: সব শর্ত একসাথে পূরণ হলে মэтচ করে- শুধু ববের ডকুমেন্টে তিনটি ফিল্ডই আছে
- সরলীকৃত সিনট্যাক্স (MongoDB ইমপ্লিসিট AND):
{ "StudentFirstName": { $exists: true }, "StudentAge": { $exists: true }, "StudentCountryName": { $exists: true } }- একই ফলাফল দেবে $exists: falseদিয়ে অনুপস্থিত ফিল্ডও খুঁজে বের করা যায়
স্কিমা-বিহীন MongoDB-এ ডেটা কোয়ালিটি চেক এবং মাইগ্রেশন ভেরিফিকেশনের জন্য খুব উপযোগী।