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

การตรวจสอบว่าค่าอยู่ในอาร์เรย์ใน MongoDB ด้วย $in

ตรวจสอบค่าในอาร์เรย์ด้วยออปเจอเตอร์ $in

บทความนี้สาธิตการใช้งานออปเจอเตอร์ $in ใน MongoDB เพื่อค้นหาเอกสารที่อาร์เรย์ฟิลด์มีค่าตรงกับค่าใดค่าหนึ่งในรายการที่กำหนด

ขั้นตอนที่ 1: สร้าง Collection และเพิ่มข้อมูลตัวอย่าง

> db.testInArray.insertOne({"ListOfNumbers":[10,56,78,90,32]});
{ "acknowledged": true, "insertedId": ObjectId("5e04d42df5e889d7a519950d") }
> db.testInArray.insertOne({"ListOfNumbers":[56,78,91,100]});
{ "acknowledged": true, "insertedId": ObjectId("5e04d588f5e889d7a519950e") }

ขั้นตอนที่ 2: แสดงข้อมูลทั้งหมด

> db.testInArray.find().pretty();

ผลลัพธ์:

{ "_id": ObjectId("5e04d42df5e889d7a519950d"), "ListOfNumbers": [10, 56, 78, 90, 32] }
{ "_id": ObjectId("5e04d588f5e889d7a519950e"), "ListOfNumbers": [56, 78, 91, 100] }

ขั้นตอนที่ 3: ค้นหาเอกสารที่ ListOfNumbers มีค่า 90

> db.testInArray.find({ ListOfNumbers: { "$in": [90] } });

ผลลัพธ์ที่ได้

{ "_id": ObjectId("5e04d42df5e889d7a519950d"), "ListOfNumbers": [10, 56, 78, 90, 32] }

สรุป: $in ใช้สำหรับทดสอบว่าค่าของฟิลด์ (ซึ่งอาจเป็นอาร์เรย์) มีค่าตรงกับค่าใดค่าหนึ่งในอาร์เรย์ที่ระบุ สามารถระบุหลายค่าได้ เช่น {$in: [90, 100]}