স্ট্রিং আইডি ObjectId-তে কাস্ট করা
MongoDB-এ স্ট্রিং ফরম্যাটে থাকা ObjectId কে আসল ObjectId টাইপে রূপান্তর করতে অ্যাগ্রিগেশন পাইপলাইনে $toObjectId (বা পুরনো ভার্সনে কাস্টম লজিক) ব্যবহার করা হয়।
নমুনা ডেটা তৈরি
> db.demo460.insertOne({ "_id": "5ab9cbfa31c2ab715d42129e" })
সমস্ত ডকুমেন্ট দেখানো
> db.demo460.find()
আউটপুট:
{ "_id": "5ab9cbfa31c2ab715d42129e" }
ObjectId-তে কনভার্ট করার কোয়েরি (আধুনিক সিনট্যাক্স)
> db.demo460.aggregate([
{ $addFields: { value: { $toObjectId: "$_id" } } }
])
ফলাফল:
{ "_id": "5ab9cbfa31c2ab715d42129e", "value": ObjectId("5ab9cbfa31c2ab715d42129e") }
ব্যাখ্যা
$toObjectId(MongoDB 4.0+): স্ট্রিংকে সরাসরি ObjectId-তে কনভার্ট করে- পুরনো ভার্সনে
$convertবা কাস্টম লজিক দরকার হতো - এটি খুবই χρήপ করি যখন এক্সটার্নাল সোর্স থেকে স্ট্রিং আইডি আসে এবং জয়েন/লুকআপ করতে হয়
- এরর হ্যান্ডলিং için
$convertএরonError/onNullঅপশন ব্যবহার করুন
মূল আর্টিকেলে লেখা idConvert একটি প্লেসহোল্ডার, বাস্তবে উপরের সিনট্যাক্স ব্যবহার করুন।