MongoDB-এ কোনো ফিল্ড ডকুমেন্টে আছে কিনা (মান যেকোনো হোক) তা চেক করতে $exists অপারেটর ব্যবহার করা হয়।
সিনট্যাক্স
db.yourCollectionName.find({yourFieldName:{$exists:true}});
ডেমো কলেকশন তৈরি
> db.findAllDocumentWhichHaveFieldDemo.insertOne({"StudentName":"John","StudentAge":null});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9d1d60a629b87623db1b22") }
> db.findAllDocumentWhichHaveFieldDemo.insertOne({"StudentName":"Larry","StudentAge":null});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9d1d70a629b87623db1b23") }
> db.findAllDocumentWhichHaveFieldDemo.insertOne({"StudentName":"Chris","StudentAge":""});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9d1d7ba629b87623db1b24") }
> db.findAllDocumentWhichHaveFieldDemo.insertOne({"StudentName":"Robert","StudentAge":""});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9d1d81a629b87623db1b25") }
সকল ডকুমেন্ট দেখা
> db.findAllDocumentWhichHaveFieldDemo.find().pretty();
আউটপুট
StudentAge ফিল্ড থাকা ডকুমেন্ট খোঁজা
> db.findAllDocumentWhichHaveFieldDemo.find({StudentAge:{$exists:true}});আউটপুট (সকল ৪টি - মান null/empty হলেও)
StudentName বাদ দিয়ে শুধু StudentAge দেখানো
{ "_id" : ObjectId("5c9d1d60a629b87623db1b22"), "StudentAge" : null } { "_id" : ObjectId("5c9d1d70a629b87623db1b23"), "StudentAge" : null } { "_id" : ObjectId("5c9d1d7ba629b87623db1b24"), "StudentAge" : "" } { "_id" : ObjectId("5c9d1d81a629b87623db1b25"), "StudentAge" : "" }গুরুত্বপূর্ণ পার্থক্য
| কোয়েরি | ফলাফল |
|---|---|
{field: {$exists: true}} | ফিল্ড থাকা সব (null, "", 0, false সহ) |
{field: {$ne: null}} | null নয় এমন সব (missing field ও আসবে) |
{field: {$exists: true, $ne: null}} | ফিল্ড আছে এবং null নয় |