Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

คิวรี MongoDB ค้นหาเอกสารที่ตรงกับค่าในอาร์เรย์ด้วย $in

เมื่อต้องการค้นหาเอกสารเฉพาะที่มีค่าตรงกับรายการในอาร์เรย์ ให้ใช้โอเปอเรเตอร์ $in ของ MongoDB มาสร้างคอลเลกชันตัวอย่างกันก่อน

> db.demo511.insertOne({"ListOfProject":["Library Management System","Hospital Management System"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e88473a987b6e0e9d18f585") }
> db.demo511.insertOne({"ListOfProject":["Online Web Tracking","Library Management System"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e884751987b6e0e9d18f586") }
> db.demo511.insertOne({"ListOfProject":["Online Shopping Cart","Hospital Management System"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e884776987b6e0e9d18f587") }

แสดงเอกสารทั้งหมดด้วย find():

> db.demo511.find();

ผลลัพธ์:

{ "_id" : ObjectId("5e88473a987b6e0e9d18f585"), "ListOfProject" : [ "Library Management System", "Hospital Management System" ] }
{ "_id" : ObjectId("5e884751987b6e0e9d18f586"), "ListOfProject" : [ "Online Web Tracking", "Library Management System" ] }
{ "_id" : ObjectId("5e884776987b6e0e9d18f587"), "ListOfProject" : [ "Online Shopping Cart", "Hospital Management System" ] }

คิวรีค้นหาเอกสารที่ตรงกับเงื่อนไข

> db.demo511.find({ "ListOfProject":{$in:["Hospital Management System","Online Shopping Cart"]}});

ผลลัพธ์ - พบ 2 เอกสารที่มีโปรเจ็กต์ตรงกับเงื่อนไข:


การทำงานของ $in

โอเปอเรเตอร์ $in จะคืนค่าเอกสารที่ฟิลด์ระบุมีค่า อย่างน้อยหนึ่งค่า ตรงกับค่าในอาร์เรย์ที่กำหนด เหมาะสำหรับการค้นหาแบบ "OR" หลายค่าในฟิลด์อาร์เรย์