คุณสามารถใช้ตัวดำเนินการ $in เพื่อค้นหารายการรหัสใน MongoDB ได้ เพื่อให้เข้าใจแนวคิด ให้เราสร้างคอลเลกชันพร้อมกับเอกสาร แบบสอบถามเพื่อสร้างคอลเลกชันที่มีเอกสารมีดังนี้ -
> db.findListOfIdsDemo.insertOne({"StudentName":"Carol","StudentAge":21});{ "acknowledged" :true, "insertedId" :ObjectId("5c8ecadd2f684a30fbdfd575")}> db.findemoList.OfIds insertOne({"StudentName":"Bob","StudentAge":25});{ "acknowledged" :true, "insertedId" :ObjectId("5c8ecae42f684a30fbdfd576")}> db.findListOfIdsDemo.insertOne({"StudentName":" David","StudentAge":22});{ "acknowledged" :true, "insertedId" :ObjectId("5c8ecaed2f684a30fbdfd577")}> db.findListOfIdsDemo.insertOne({"StudentName":"John","StudentAge":20 });{ "รับทราบ" :จริง "insertedId" :ObjectId("5c8ecaf82f684a30fbdfd578")}> db.findListOfIdsDemo.insertOne({"StudentName":"Mike","StudentAge":23});{ "รับทราบ" :จริง "insertedId" :ObjectId("5c8ecb092f684a30fbdfd579")}
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้เมธอด find() แบบสอบถามมีดังนี้ −
> db.findListOfIdsDemo.find().pretty();
ต่อไปนี้เป็นผลลัพธ์ -
{ "_id" :ObjectId("5c8ecadd2f684a30fbdfd575"), "StudentName" :"Carol", "StudentAge" :21}{ "_id" :ObjectId("5c8ecae42f684a30fbdfd576"), "StubdentName" StudentAge" :25}{ "_id" :ObjectId("5c8ecaed2f684a30fbdfd577"), "StudentName" :"David", "StudentAge" :22}{ "_id" :ObjectId("5c8ecaf82f684a30fbdfstu578") , "StudentAge" :20}{"_id" :ObjectId("5c8ecb092f684a30fbdfd579"),"StudentName" :"Mike","StudentAge" :23}
นี่คือแบบสอบถามเพื่อค้นหาผ่านรายการรหัส -
<ก่อนหน้า>> var listOfIds =['5c8ecae42f684a30fbdfd576', '5c8ecaf82f684a30fbdfd578'];> var documentIds =listOfIds.map (ฟังก์ชัน (myId) { ส่งคืน ObjectId_ (myId); });> Idb.find $in:documentIds }}).pretty();ต่อไปนี้เป็นผลลัพธ์ -
{ "_id" :ObjectId("5c8ecae42f684a30fbdfd576"), "StudentName" :"Bob", "StudentAge" :25}{ "_id" :ObjectId("5c8ecaf82f684a30fbdfd578"), "Student"Name, "Student"Name StudentAge" :20}