একক ডকুমেন্ট রিটার্ন: findOne()
MongoDB-এ একটি কলেকশন থেকে শুধু একটি ডকুমেন্ট (প্রথম মিলে যাওয়া) রিটার্ন করতে findOne() মেথড ব্যবহার করা হয়। এটি find().limit(1) এর সমতুল্য কিন্তু সরল।
নমুনা ডেটা তৈরি
> db.demo463.insertOne({ "StudentName": "Chris Brown", "StudentAge": 21, "StudentCountryName": "US" })
> db.demo463.insertOne({ "StudentName": "David Miller", "StudentAge": 23, "StudentCountryName": "UK" })
> db.demo463.insertOne({ "StudentName": "John Doe", "StudentAge": 22, "StudentCountryName": "AUS" })
> db.demo463.insertOne({ "StudentName": "John Smith", "StudentAge": 24, "StudentCountryName": "US" })
সমস্ত ডকুমেন্ট দেখানো
> db.demo463.find()
আউটপুট:
{ "_id": ObjectId("..."), "StudentName": "Chris Brown", "StudentAge": 21, "StudentCountryName": "US" }
{ "_id": ObjectId("..."), "StudentName": "David Miller", "StudentAge": 23, "StudentCountryName": "UK" }
{ "_id": ObjectId("..."), "StudentName": "John Doe", "StudentAge": 22, "StudentCountryName": "AUS" }
{ "_id": ObjectId("..."), "StudentName": "John Smith", "StudentAge": 24, "StudentCountryName": "US" }
নির্দিষ্ট ডকুমেন্ট রিট্রিভ: findOne()
> db.demo463.findOne({ "StudentName": "John Doe" })
ফলাফল:
{ "_id": ObjectId("..."), "StudentName": "John Doe", "StudentAge": 22, "StudentCountryName": "AUS" }
ব্যাখ্যা
findOne(query): কোয়েরি মэтচ করার প্রথম ডকুমেন্ট রিটার্ন করে (নेचারাল অর্ডার/ইনডেক্স অর্ডার)- কোয়েরি না দিলে (
findOne()) প্রথম ডকুমেন্ট রিটার্ন করে - ম্যাচ না হলে
nullরিটার্ন করে find()কোরসার রিটার্ন করে,findOne()সরাসরি ডকুমেন্ট অবজেক্ট রিটার্ন করে- পারফরম্যান্স: একক ডকুমেন্ট দরকার হলে
findOne()দ্রুত
সাধারণ ব্যবহারের ক্ষেত্রে: ইউজার প্রোফাইল লোড, কনফিগারেশন পড়া, লেটেস্ট রেকর্ড পাওয়া।